2010-08-12 2 views
0

Итак, у меня есть JFrame, в который я добавил пользовательский компонент JPanel.Java: Обработка события на компоненте внутри отдельного компонента JPanel

В компоненте JPanel есть кнопка, которую я хочу подключить к слушателю в моем JFrame.

Каков наилучший способ для этого?

ответ

2

Если я не читаю это неправильно, когда вы добавили JPanel самостоятельно, вы можете просто добавить кнопку actionlistener к кнопке.

JButton.addActionListener(... some listener); 

Или это что-то еще, что вы спрашиваете здесь? например если пользовательский JPanel не разработан вами. Тогда в этом случае увидеть, если панель выставляет API для добавления слушателя его кнопок, если нет, то последний вариант перебрать своих детей, чтобы найти JButton:

Component[] comp = customPanel.getComponents(); 
for(Component c: comp) { 
    if(c is a button i am interested in) { 
    c.addActionListener(new ActionListener() { 
     public void actionPerformed(ActionEvent e) { 
      // implement the logic of what happens when button is clicked! 
     } 
    }); 
    } 
} 
+0

Как я реализовать API для слушатель действия? (Я также разработчик компонента JPanel) –

+0

@whydna Я изменил свой код, чтобы добавить прослушиватель действий – naikus

 Смежные вопросы

  • Нет связанных вопросов^_^