Java Tutoriel Swing : Comment créer une application GUI dans Java
Qu'est-ce que le Swing dans Java?
Balancez-vous Java est une boîte à outils d'interface utilisateur graphique (GUI) qui inclut les composants de l'interface utilisateur graphique. Swing fournit un ensemble riche de widgets et de packages pour créer des composants d'interface utilisateur graphique sophistiqués pour Java applications. Swing fait partie de Java Foundation Classes(JFC), qui est une API pour Java Programmation GUI qui fournit une interface graphique.
Votre partenaire Java La bibliothèque Swing est construite au sommet de la Java Boîte à outils de widgets abstraits (AWT), une ancienne boîte à outils GUI dépendante de la plate-forme. Vous pouvez utiliser le Java des composants de programmation d'interface utilisateur simples tels que des boutons, des zones de texte, etc., à partir de la bibliothèque et vous n'avez pas besoin de créer les composants à partir de zéro.
Dans ce nouvel article concernant notre nouveau projet Java Tutoriel Swing, vous apprendrez Java Les bases de l'interface graphique comme-
Java Diagramme de hiérarchie de la classe Swing

Tous les composants dans Java Swing est un composant JComponent qui peut être ajouté aux classes conteneurs.
Qu’est-ce qu’une classe conteneur ?
Les classes conteneurs sont des classes qui peuvent contenir d’autres composants. Donc pour créer un Java Swing GUI, nous avons besoin d'au moins un objet conteneur. Il existe 3 types de Java Conteneurs pivotants.
- Webinars: C'est un pur conteneur et n'est pas une fenêtre en soi. Le seul but d'un Panel est d'organiser les composants sur une fenêtre.
- Cadre métallique robuste: C'est une fenêtre entièrement fonctionnelle avec son titre et ses icônes.
- Dialogue: Cela peut être considéré comme une fenêtre contextuelle qui apparaît lorsqu'un message doit être affiché. Ce n'est pas une fenêtre entièrement fonctionnelle comme le Frame.
Qu'est-ce que l'interface graphique dans Java?
GUI (interface utilisateur graphique) dans Java est un générateur d'expérience visuelle facile à utiliser pour Java applications. Il est principalement constitué de composants graphiques tels que des boutons, des étiquettes, des fenêtres, etc. à travers lesquels l'utilisateur peut interagir avec une application. L'interface graphique joue un rôle important pour créer des interfaces simples pour Java applications.
Comment créer une interface graphique dans Java avec exemple
Maintenant dans ce Java Tutoriel GUI, comprenons comment créer une interface graphique dans Java avec des balançoires dans Java exemples.
Étape 1) Copier le code dans un éditeur
Dans un premier temps, copiez le code suivant dans un éditeur.
import javax.swing.*; class gui{ public static void main(String args[]){ JFrame frame = new JFrame("My First GUI"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(300,300); JButton button = new JButton("Press"); frame.getContentPane().add(button); // Adds Button to content pane of frame frame.setVisible(true); } }
Étape 2) Exécutez le code
Étape suivante, enregistrer, compiler et exécuter le code
Étape 3) Copiez le code suivant dans un éditeur
Ajoutons maintenant un bouton à notre cadre. Copiez le code suivant dans un éditeur à partir de Java Exemple d'interface utilisateur
import javax.swing.*; class gui{ public static void main(String args[]){ JFrame frame = new JFrame("My First GUI"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(300,300); JButton button1 = new JButton("Press"); frame.getContentPane().add(button1); frame.setVisible(true); } }Étape 4) Exécutez le code
Ensuite, exécutez le code. Vous obtiendrez un gros bouton.
Étape 5) Ajouter deux boutons
Et si vous ajoutiez deux boutons ? Copiez le code suivant dans un éditeur.
import javax.swing.*; class gui{ public static void main(String args[]){ JFrame frame = new JFrame("My First GUI"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(300,300); JButton button1 = new JButton("Button 1"); JButton button2 = new JButton("Button 2"); frame.getContentPane().add(button1); frame.getContentPane().add(button2); frame.setVisible(true); } }
Étape 6) Enregistrez et exécutez le programme
Ensuite, enregistrez, compilez et exécutez le programme.
Étape 7) Vérifier la sortie
Sortie inattendue = ? Les boutons se chevauchent.
Java Gestionnaire de mise en page
Le gestionnaire de mise en page est utilisé pour mettre en page (ou organiser) l'interface graphique. Java composants à l’intérieur d’un conteneur. Il existe de nombreux gestionnaires de mise en page, mais les plus fréquemment utilisés sont :
Java Disposition des bordures
A BorderLayout
place les composants dans cinq zones maximum : haut, bas, gauche, droite et centre. C'est le gestionnaire de mise en page par défaut pour chaque JFrame Java
Java Disposition du flux
FlowLayout
est le gestionnaire de mise en page par défaut pour chaque JPanel
. Il dispose simplement les composants sur une seule ligne, les uns après les autres.
Java GrilleBagLayout
C’est la plus sophistiquée de toutes les mises en page. Il aligne les composants en les plaçant dans une grille de cellules, ce qui permet aux composants de s'étendre sur plusieurs cellules.
Étape 8) Créer un cadre de discussion
Que diriez-vous de créer un cadre de discussion comme ci-dessous ?
Essayez de vous coder avant de regarder le programme ci-dessous.
//Usually you will require both swing and awt packages // even if you are working with just swings. import javax.swing.*; import java.awt.*; class gui { public static void main(String args[]) { //Creating the Frame JFrame frame = new JFrame("Chat Frame"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(400, 400); //Creating the MenuBar and adding components JMenuBar mb = new JMenuBar(); JMenu m1 = new JMenu("FILE"); JMenu m2 = new JMenu("Help"); mb.add(m1); mb.add(m2); JMenuItem m11 = new JMenuItem("Open"); JMenuItem m22 = new JMenuItem("Save as"); m1.add(m11); m1.add(m22); //Creating the panel at bottom and adding components JPanel panel = new JPanel(); // the panel is not visible in output JLabel label = new JLabel("Enter Text"); JTextField tf = new JTextField(10); // accepts upto 10 characters JButton send = new JButton("Send"); JButton reset = new JButton("Reset"); panel.add(label); // Components Added using Flow Layout panel.add(tf); panel.add(send); panel.add(reset); // Text Area at the Center JTextArea ta = new JTextArea(); //Adding Components to the frame. frame.getContentPane().add(BorderLayout.SOUTH, panel); frame.getContentPane().add(BorderLayout.NORTH, mb); frame.getContentPane().add(BorderLayout.CENTER, ta); frame.setVisible(true); } }