Какое из них лучше и почему? В моем необразованном мнении лучше иметь их в отдельных файлах, потому что если у вас есть, скажем, 10 кнопок, 5 комбинированных ящиков и список или два, имеющие все эти классы в одном файле, будут беспорядочными. Я прав, думая об этом? Почему вы выбираете один за другим?Где разместить слушателей событий.?
SimpleGUI.java:
public class simpleGUI extends JFrame {
public JButton button;
public JLabel label;
public simpleGUI() {
Container contentPane = getContentPane();
JPanel panel = new JPanel();
label = new JLabel("123abc");
button = new JButton("click me");
simpleEventListener c = new simpleEventListener();
c.setParams(label);
button.addActionListener(c);
panel.add(button);
panel.add(label);
contentPane.add(panel);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(300,300);
setTitle("simpleGUI");
setVisible(true);
}
public static void main(String[]args) {
JFrame frame = new simpleGUI();
}
}
simpleEventListener.java:
public class simpleEventListener implements ActionListener {
private JLabel label;
public void actionPerformed(ActionEvent e) {
label.setText("Hello World!");
}
public void setParams(JLabel label) {
this.label = label;
}
}
или:
public class simpleGUI extends JFrame {
public JButton button;
public JLabel label;
public simpleGUI() {
Container contentPane = getContentPane();
JPanel panel = new JPanel();
label = new JLabel("123abc");
button = new JButton("click me");
simpleEventListener c = new simpleEventListener();
button.addActionListener(c);
panel.add(button);
panel.add(label);
contentPane.add(panel);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(300,300);
setTitle("simpleGUI");
setVisible(true);
}
public class simpleEventListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
label.setText("Hello World!");
}
}
public static void main(String[]args) {
JFrame frame = new simpleGUI();
}
}