Préface
Swing est une boîte à outils de développement pour développer l'interface utilisateur des applications Java. Il est basé sur la boîte à outils de fenêtre abstraite (AWT) pour permettre aux applications multiplateformes d'utiliser tout style d'apparence enfichable. Les développeurs de swing peuvent utiliser des fonctionnalités riches et flexibles de Swing et des composants modulaires pour créer une interface utilisateur élégante avec très peu de code.
Swing est une boîte à outils GUI conçue pour Java.
Le swing fait partie de la classe Java Basic.
Le swing comprend des périphériques graphiques d'interface utilisateur (GUI) tels que des zones de texte, des boutons, des volets de séparation et des tables.
Le swing offre de nombreux meilleurs éléments d'affichage d'écran que AWT. Ils sont écrits en java pur, afin qu'ils puissent courir sur des plates-formes comme Java elle-même, ce qui n'est pas comme AWT. Ils font partie de JFC. Ils prennent en charge les panneaux et les thèmes remplaçables (thèmes spécifiques pour divers systèmes d'exploitation par défaut), mais au lieu de vraiment utiliser des appareils fournis par les plates-formes natives, ils les imitent simplement à la surface. Cela signifie que vous pouvez utiliser n'importe quel panneau pris en charge par Java sur n'importe quelle plate-forme. L'inconvénient des composants légers est qu'ils sont lents à exécuter, et l'avantage est qu'ils peuvent adopter un comportement unifié sur toutes les plateformes.
Hello World Programs
Le code de fichier helloworldswing.java est le suivant:
Importer javax.swing. *; classe publique Helloworldswing {/ ** {* Créer et afficher l'interface graphique. Pour des raisons de sécurité du fil, * est appelé dans le fil d'appel de l'événement. * / private static void CreateArandshowGui () {// Assurer un beau style d'apparence jframe.setdefaultLookAndFeelDecorated (true); // Créer et définir la fenêtre jframe frame = new JFrame ("Helloworldswing"); frame.setDefaultCloseOperation (jframe.exit_on_close); // Ajouter "Hello World" Tag JLabel Label = new JLabel ("Hello World"); frame.getContentPane (). Add (label); // Afficher la fenêtre frame.pack (); frame.setVisible (true); } public static void main (String [] args) {// affiche l'application gui javax.swing.swingutilities.invokelater (new Runnable () {public void run () {createAnDshowGui ();}}); }} Exécutez la commande suivante pour sortir le résultat:
$ javac helloworldswing.java $ java helloworldswing
Une instance d'une boîte de connexion utilisateur
Le code de fichier swingLoginexample.java est le suivant:
import javax.swing.jbutton; import javax.swing.jframe; import javax.swing.jLabel; import javax.swing.jpanel; import javax.swing.jpasswordfield; import javax.swing.jtextfield; classe publique swingLoginexample {public static void main (String [] args) {// crée jframe instance jframe frame = new JFrame ("Exemple de connexion"); // Réglage de la largeur et de la hauteur du cadre du cadre.SetSize (350, 200); frame.setDefaultCloseOperation (jframe.exit_on_close); / * Créer un panneau, cette balise Div de type HTML * Nous pouvons créer plusieurs panneaux et spécifier des emplacements dans JFrame * Dans le panneau, nous pouvons ajouter des champs de texte, des boutons et d'autres composants. * / Jpanel Panel = new JPanel (); // Ajouter un cadre de panneau.add (panneau); / * * Appelez des méthodes définies par l'utilisateur et ajoutez des composants au panneau * / PlaceComponents (panneau); // Définissez l'interface sur Visible Frame.SetVisible (true); } Private Static void PlaceComponents (Panneau JPanel) {/ * Nous ne présenterons pas la partie de mise en page ici * Définissez la mise en page sur NULL * / PANNEL.SetLayout (null); // Créer JLabel JLabel Userlabel = new JLabel ("User:"); / * Cette méthode définit l'emplacement du composant. * SetBounds (x, y, largeur, hauteur) * x et y spécifient la nouvelle position dans le coin supérieur gauche, et la largeur et la hauteur spécifient la nouvelle taille. * / userLabel.setBounds (10,20,80,25); PANNEL.ADD (USERLABEL); / * * Créer un champ de texte pour l'entrée de l'utilisateur * / jTextField userText = new JTextField (20); userText.SetBounds (100,20,165,25); PANNEL.ADD (UserText); // Entrez le champ de texte pour le mot de passe jLabel passwordLabel = new JLabel ("mot de passe:"); PasswordLabel.SetBounds (10,50,80,25); PANNEL.ADD (PasswordLabel); / * * Ce champ de texte similaire à l'entrée * Cependant, les informations d'entrée seront remplacées par des points, qui sont utilisés pour contenir la sécurité du mot de passe * / jpasswordfield PasswordText = new JPasswordField (20); PasswordText.SetBounds (100,50,165,25); panneau.add (mot de passe); // Créer le bouton de connexion JBUTTON LOGINBUTTON = NOUVEAU JBUTTON ("Login"); LoginButton.SetBounds (10, 80, 80, 25); PANNEL.ADD (LOGINBUTTON); }}Exécutez la commande suivante pour sortir le résultat:
$ javac swingloginexample.java $ java swingloginexample
Analyse du concept:
L'idée de base du programme GUI de JFrame Java est basée sur JFrame, qui est un objet de fenêtre sur l'écran, qui peut être maximisée, minimisée et fermée.
La classe de conteneurs de panneau dans le swing de boîte à outils Java Graphical Interface (GUI) Java Graphical Interface (GUI) est incluse dans le package Javax.Swing et peut être imbriqué. Sa fonction est de combiner des composants avec les mêmes fonctions logiques dans la forme. Il s'agit d'un conteneur léger qui peut être ajouté au formulaire JFrame. .
JLABEL Un objet JLabel peut afficher du texte, des images ou les deux. Vous pouvez spécifier où le contenu de la balise est aligné dans la zone d'affichage de la balise en définissant l'alignement vertical et horizontal. Par défaut, les étiquettes sont centrées verticalement dans leur zone d'affichage. Par défaut, les étiquettes qui affichent uniquement le texte sont alignées dans les bords de début; Les étiquettes qui affichent uniquement les images sont alignées au centre horizontalement.
JTextfield est un composant léger qui permet l'édition du texte à une seule ligne.
JPasswordfield nous permet d'entrer une ligne de mots comme une boîte d'entrée, mais masquer l'astérisque (*) ou le point créer un mot de passe (mot de passe)
JBUTTON Une instance de la classe JBUTTON. Utilisé pour créer des boutons similaires à "Connexion" dans les cas.
D'accord, cet article a pris fin. Tout ce dont nous parlons ici est une connaissance de base. Avec cette fondation, il n'est pas difficile de concevoir une interface utilisateur graphique plus complexe!