Swing In Java: savoir comment créer une interface graphique avec des exemples

: gagnez le concept de swing en java avec la hiérarchie des classes swing et le gestionnaire de disposition avec une démonstration pratique de l'application GUI.

Swing in java fait partie de la classe de base Java qui est légère et indépendante de la plate-forme. Il est utilisé pour créer des applications basées sur des fenêtres. Il comprend des composants comme un bouton, une barre de défilement, un champ de texte, etc. La mise en place de tous ces composants crée une interface utilisateur graphique. Dans cet article, nous allons passer en revue les concepts impliqués dans le processus de création d'applications à l'aide de swing in . Voici les concepts abordés dans cet article:



Qu'est-ce que Swing In Java?

Swing in Java est une boîte à outils d'interface graphique légère qui comprend une grande variété de widgets pour créer des applications basées sur des fenêtres optimisées. Il fait partie du JFC (Java Foundation Classes). Il est construit sur l'API AWT et entièrement écrit en . Il est indépendant de la plate-forme contrairement à AWT et possède des composants légers.



Il devient plus facile de créer des applications car nous avons déjà des composants d'interface graphique tels que des boutons, des cases à cocher, etc.

Classe de conteneur

Tout qui contient d'autres composants s'appelle une classe de conteneur. Pour créer des applications GUI, au moins une classe de conteneur est nécessaire.



Voici les trois types de classes de conteneurs:

  1. Panneau - Il est utilisé pour organiser les composants dans une fenêtre

  2. Frame - Une fenêtre entièrement fonctionnelle avec des icônes et des titres



  3. Dialogue - C'est comme une fenêtre pop-up mais pas entièrement fonctionnel comme le cadre

Différence entre AWT et Swing

AWT BALANÇOIRE
  • Dépendant de la plate-forme
  • Indépendant de la plateforme
  • Ne suit pas MVC
  • Suit MVC
  • Petits composants
  • Des composants plus puissants
  • Ne prend pas en charge l'aspect et la sensation enfichables
  • Prend en charge l'aspect et la sensation enfichables
  • Poids lourd
  • Poids léger

Hiérarchie des classes Java Swing

hiérarchie-swing dans java-edureka

Explication : Tous les composants en swing comme JButton, JComboBox, JList, JLabel sont hérités de la classe JComponent qui peut être ajoutée aux classes conteneur. Les conteneurs sont les fenêtres comme le cadre et les boîtes de dialogue. Les composants de base du swing sont les éléments de base de toute application d'interface graphique. Des méthodes telles que setLayout remplacent la disposition par défaut dans chaque conteneur. Les conteneurs comme JFrame et JDialog peuvent uniquement ajouter un composant à lui-même. Voici quelques composants avec des exemples pour comprendre comment nous pouvons les utiliser.

Classe JButton

Il est utilisé pour créer un bouton étiqueté. En utilisant ActionListener, il en résultera une action lorsque le bouton est enfoncé. Il hérite de la classe AbstractButton et est indépendant de la plate-forme.

Exemple:

import javax.swing. * exemple de classe publique {public static void main (String args []) {JFrame a = new JFrame ('example') JButton b = new JButton ('click me') b.setBounds (40,90, 85,20) a.add (b) a.setSize (300,300) a.setLayout (null) a.setVisible (true)}}

Production:

implémentation de hashmap dans l'exemple java

Classe JTextField

Il hérite de la classe JTextComponent et est utilisé pour permettre l'édition de texte sur une seule ligne.

Exemple:

import javax.swing. * exemple de classe publique {public static void main (String args []) {JFrame a = new JFrame ('example') JTextField b = new JTextField ('edureka') b.setBounds (50,100,200,30) a .add (b) a.setSize (300,300) a.setLayout (null) a.setVisible (true)}}

Production:

Classe JScrollBar

Il est utilisé pour ajouter une barre de défilement, à la fois horizontale et verticale.

Exemple:

import javax.swing. * exemple de classe {exemple () {JFrame a = new JFrame ('exemple') JScrollBar b = new JScrollBar () b.setBounds (90,90,40,90) a.add (b) a. setSize (300,300) a.setLayout (null) a.setVisible (true)} public static void main (String args []) {new example ()}}

Production:

Classe JPanel

Il hérite de la classe JComponent et fournit de l'espace pour une application qui peut attacher n'importe quel autre composant.

import java.awt. * import javax.swing. * classe publique Exemple {Example () {JFrame a = new JFrame ('example') JPanel p = new JPanel () p.setBounds (40,70,200,200) JButton b = new JButton ('cliquez sur moi') b.setBounds (60,50,80,40) p.add (b) a.add (p) a.setSize (400,400) a.setLayout (null) a.setVisible (true)} public static void main (String args []) {new Example ()}}

Production:

JMenu Clas s

Il hérite de la classe JMenuItem et est un composant de menu déroulant qui s'affiche à partir de la barre de menus.

utilisation de r pour l'apprentissage automatique
import javax.swing. * class Exemple {JMenu menu JMenuItem a1, a2 Example () {JFrame a = new JFrame ('Example') menu = new JMenu ('options') JMenuBar m1 = new JMenuBar () a1 = new JMenuItem ( 'example') a2 = new JMenuItem ('example1') menu.add (a1) menu.add (a2) m1.add (menu) a.setJMenuBar (m1) a.setSize (400,400) a.setLayout (null) a .setVisible (true)} public static void main (String args []) {new Example ()}}

Production:

Classe JList

Il hérite de la classe JComponent, l'objet de la classe JList représente une liste d'éléments de texte.

import javax.swing. * classe publique Exemple {Example () {JFrame a = new JFrame ('example') DefaultListModel l = new DefaultListModel () l.addElement ('first item') l.addElement ('second item') JList b = new JList (l) b.setBounds (100,100,75,75) a.add (b) a.setSize (400,400) a.setVisible (true) a.setLayout (null)} public static void main (String args [ ]) {nouvel exemple ()}}

Production:

Classe JLabel

Il est utilisé pour placer du texte dans un conteneur. Il hérite également de la classe JComponent.

import javax.swing. * classe publique Exemple {public static void main (String args []) {JFrame a = new JFrame ('example') JLabel b1 b1 = new JLabel ('edureka') b1.setBounds (40,40, 90,20) a.add (b1) a.setSize (400,400) a.setLayout (null) a.setVisible (true)}}

Production:

Classe JComboBox

Il hérite de la classe JComponent et est utilisé pour afficher un menu contextuel de choix.

import javax.swing. * classe publique Exemple {JFrame a Example () {a = new JFrame ('example') string courses [] = {'core java', 'advanced java', 'java servlet'} JComboBox c = new JComboBox (cours) c.setBounds (40,40,90,20) a.add (c) a.setSize (400,400) a.setLayout (null) a.setVisible (true)} public static void main (String args [] ) {nouvel exemple ()}}

Production:

Gestionnaire de mise en page

Pour organiser les composants dans un conteneur, nous utilisons le gestionnaire de disposition. Voici plusieurs gestionnaires de mise en page:

  1. Disposition de la bordure

  2. Disposition du flux

  3. Disposition GridBag

Disposition de la bordure

Le gestionnaire de mise en page par défaut pour chaque JFrame est BorderLayout. Il place les composants dans jusqu'à cinq endroits qui sont en haut, en bas, à gauche, à droite et au centre.

Disposition de flux

FlowLayout place simplement les composants dans une rangée les uns après les autres, c'est le gestionnaire de mise en page par défaut pour chaque JPanel.

Disposition de GridBag

GridBagLayout place les composants dans une grille qui permet aux composants de s'étendre sur plus d'une cellule.

Exemple: cadre de discussion

import javax.swing. * import java.awt. * class Exemple {public static void main (String args []) {JFrame frame = new JFrame ('Chat Frame') frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE) frame.setSize (400 , 400) JMenuBar ob = new JMenuBar () JMenu ob1 = new JMenu ('FILE') JMenu ob2 = new JMenu ('Help') ob.add (ob1) ob.add (ob2) JMenuItem m11 = new JMenuItem ('Open ') JMenuItem m22 = new JMenuItem (' Save as ') ob1.add (m11) ob1.add (m22) JPanel panel = new JPanel () // le panneau n'est pas visible dans la sortie JLabel label = new JLabel (' Enter Text ') JTextField tf = new JTextField (10) // accepte jusqu'à 10 caractères JButton send = new JButton (' Send ') JButton reset = new JButton (' Reset ') panel.add (label) // Composants ajoutés à l'aide du panneau Flow Layout .add (label) // Composants ajoutés à l'aide de Flow Layout panel.add (tf) panel.add (send) panel.add (reset) JTextArea ta = new JTextArea () frame.getContentPane (). add (BorderLayout.SOUTH, panel ) frame.getContentPane (). add (BorderLayout.NORTH, tf) frame.getContentPane (). add (Bordure Layout.CENTER, ta) frame.setVisible (true)}}

Ceci est un exemple simple de création d'une interface graphique à l'aide de swing en Java.

comment installer php sur windows 10

Dans cet article, nous avons discuté du swing en Java et de la hiérarchie des classes de swing Java. Avec tous les composants fournis avec swing en Java, il devient plus facile de créer des applications GUI optimisées. Le langage de programmation Java est un langage de programmation structuré et avec la demande croissante, il devient extrêmement important de maîtriser tous les concepts en . Pour démarrer votre apprentissage et devenir un expert en programmation Java, inscrivez-vous à Edureka's .

Vous avez une question pour nous? Veuillez le mentionner dans la section commentaires de cet article «Swing In Java» et nous vous répondrons dans les plus brefs délais.