Dans mes deux classes Java, et les livres que nous avons utilisés dans leur disposition d'une interface graphique avec du code fortement impliqué le constructeur de la JFrame. La technique standard dans les livres semble être d'initialiser tous les composants et de les ajouter au JFrame dans le constructeur, et d'ajouter des gestionnaires d'événements anonymes pour gérer les événements si nécessaire, et c'est ce qui a été préconisé dans ma classe.Meilleure pratique avec les constructeurs JFrame?
Cela semble être assez facile à comprendre, et facile à utiliser lors de la création d'une interface graphique très simple, mais semble devenir vite laide et encombrante en faisant autre chose qu'un gui très simple. Voici un petit exemple de code de ce que je décris:
public class FooFrame extends JFrame {
JLabel inputLabel;
JTextField inputField;
JButton fooBtn;
JPanel fooPanel;
public FooFrame() {
super("Foo");
fooPanel = new JPanel();
fooPanel.setLayout(new FlowLayout());
inputLabel = new JLabel("Input stuff");
fooPanel.add(inputLabel);
inputField = new JTextField(20);
fooPanel.add(inputField);
fooBtn = new JButton("Do Foo");
fooBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//handle event
}
});
fooPanel.add(fooBtn);
add(fooPanel, BorderLayout.CENTER);
}
}
Est-ce type d'utilisation du constructeur la meilleure façon de coder une application Swing en Java? Si oui, quelles techniques puis-je utiliser pour m'assurer que ce type de constructeur est organisé et maintenable? Si non, quelle est la manière recommandée d'aborder l'assemblage d'un JFrame en java?
Donc vous ne dites pas d'étendre inutilement JFrame comme je l'ai fait ci-dessus, mais dans une classe séparée créer un nouveau JFrame et y ajouter des composants? Cela semble être un moyen raisonnable d'y arriver. Connaissez-vous de bonnes références pour consulter comment structurer le code swing gui? Merci pour la contribution. –