1 обьект для обработки событий нескольких обьектов - Java
Формулировка задачи:
Допустим у меня есть 100 кнопок и я должен обрабатывать события с каждой кнопки. Я могу не создавать 100 ActionListener'ов, а создать 1 и подключить все кнопки к нему, а там уже разбираться, какая кнопка что сделала?
Решение задачи: «1 обьект для обработки событий нескольких обьектов»
textual
Листинг программы
ActionListener listener = new ActionListener() {
public void actionPerformed(ActionEvent e) {
JButton b = (JButton) e.getSource();
}
};
JButton[] buttons = new JButton[100];
for (int i = 0; i < buttons.length; i++) {
buttons[i] = new JButton("button#" + i);
buttons[i].addActionListener(listener);
}