introduction jfc
Ce didacticiel traite des bases de la programmation GUI (Graphical User Interface) et des classes Java Foundation ou JFC en Java:
Dans nos tutoriels précédents, nous avons couvert des sujets allant des bases des types de données de type Java, des variables, de la prise de décision et des constructions de boucle, etc. aux tableaux, aux collections et aux méthodes en Java.
Nous avons également discuté du concept de multithreading et d'exceptions. Après cela, nous avons appris le support Java OOPS. En utilisant tous ces concepts, nous pouvons développer des applications de haut niveau en Java qui sont réutilisables, robustes et autonomes.
=> Vérifiez ici pour voir de A à Z des didacticiels de formation Java.
Dans ce tutoriel, nous commencerons notre discussion sur le développement graphique d'applications en Java. Comme tous les autres concepts, Java fournit de nombreuses classes graphiques réutilisables et APIS afin que nous puissions développer notre interface utilisateur graphique (GUI).
entreprises de jeux vidéo pour lesquelles travailler
Ce que vous apprendrez:
Qu'est-ce qu'une interface utilisateur graphique en Java
L'interface utilisateur graphique ou simplement appelée «GUI» est un terme général utilisé dans le monde du logiciel. Une GUI représente une application qui a un affichage visuel pour l'utilisateur avec des commandes faciles à utiliser. Une interface graphique se compose généralement de composants graphiques tels que des fenêtres, des cadres, des boutons, des étiquettes, etc.
Nous pouvons utiliser ces composants pour interagir avec le système ou même avec le monde extérieur. Java fournit de nombreuses API et classes réutilisables à l'aide desquelles nous pouvons développer des applications GUI. L'un des kits les plus anciens fournis par Java est «Abstract Windowing ToolKit» ou AWT. Toutes les API ou composants plus récents comme Swing; JavaFX, etc. sont basés sur cet AWT.
Les programmes de console que nous avons écrits jusqu'à présent sont tout aussi importants, mais nous devons savoir que toutes les dernières applications de bureau modernes sont activées graphiquement. Cela signifie qu'ils disposent d'une interface graphique prête à l'emploi qui permet à l'utilisateur final d'utiliser plus facilement l'application en un clic de souris.
Notez que l'écriture de l'interface graphique n'est pas aussi simple que de dessiner des formes ou d'inclure des images. L'interface graphique contient une séquence d'activités qui déclenchent également des événements qui à leur tour exécutent certaines actions en invoquant un composant ou une partie d'un composant comme en cliquant sur un bouton, nous déclenchons certaines actions.
Ainsi, une application GUI est un cadre composé de composants graphiques et d'événements qui peuvent être déclenchés sur ces composants et les actions qui s'exécutent à la suite d'un déclenchement d'événements.
Les cadres fournissent généralement des classes et des composants réutilisables précompilés que nous pouvons faire glisser et déposer dans la zone de dessin, puis associer les événements et les actions à ces composants.
Java fournit les principaux frameworks suivants.
Java fournit les frameworks suivants pour la programmation GUI:
- Boîte à outils de fenêtrage abstrait: Il s'agit du plus ancien framework de Java et il a été introduit pour la première fois dans JDK 1.0. La plupart des composants AWT sont désormais obsolètes et sont remplacés par des composants swing Java.
- API Swing: Il s'agit d'un ensemble de bibliothèques graphiques développées au-dessus du framework AWT et fait partie de Java Foundation Classes (JFC). Swing a une architecture modulaire dans laquelle nous pouvons utiliser plug-and-play pour les composants.
- JavaFX: Le dernier framework est disponible à partir de Java 8.
Il existe divers frameworks graphiques tiers tels que la boîte à outils standard de widgets (SWT) d'Eclipse ou la boîte à outils Web Google (GWT) utilisée sur Android.
Classes Java Foundation (JFC)
Java fournit un ensemble de fonctionnalités et de fonctionnalités pour développer des interfaces utilisateur graphiques ou des GUI. Cet ensemble de fonctionnalités est connu sous le nom de classes Java Foundation ou JFC.
En utilisant JFC, nous pouvons ajouter des fonctionnalités graphiques riches aux applications et les rendre plus interactives. JFC contient un ensemble de composants graphiques qui peuvent être facilement connectés à notre application et programmés selon nos besoins. Mais la programmation de ces composants ne prend généralement que quelques lignes de code.
JFC contient les classes des packages java.awt et javax.swing. En dehors de ceux-ci, il contient également des classes liées à Java 3D, Java 2D, Java Accessibility, etc. JFC est synchronisé avec le modèle d'objet et de composants de Java et est donc facile à utiliser.
Le diagramme suivant résume divers composants de JFC.
Comme indiqué ci-dessus, JFC contient des classes AWT et Swing. Nous discuterons de chacun de ces éléments au fur et à mesure que nous poursuivrons les didacticiels Java AWT et Java Swing. JFC fournit également diverses méthodes que nous pouvons utiliser dans notre application.
Certaines des méthodes couramment utilisées sont:
Méthode | Description |
---|---|
public void add (composant c) | Ajoute un composant au composant parent en appelant la méthode. |
public void setSize (largeur int, hauteur int) | Définit la taille d'un composant avec une largeur et une hauteur spécifiées. |
public void setLayout (LayoutManager m) | Définissez le gestionnaire de disposition spécifié pour ce composant. |
public void setVisible (booléen b) | Définissez la visibilité du composant selon la valeur booléenne. Par défaut, la visibilité est fausse. |
Passons maintenant à la discussion des composants de l'interface graphique à un niveau général. Ensuite, dans nos tutoriels suivants, nous discuterons des packages AWTand Swing et de leurs composants en particulier.
Composants de fenêtre
Nous savons que le conteneur parent de toute application GUI est une fenêtre qui peut contenir un ou plusieurs cadres.
Une GUI comprend généralement des éléments d'interface utilisateur ou les éléments qui sont affichés en tant que partie de l'interface graphique dans l'application.
Ces composants de fenêtre sont les suivants:
- Éléments d'information: Les éléments ou composants qui nous fournissent des informations telles que des étiquettes, des icônes, des bannières ou des boîtes de dialogue de message.
- Contrôles d'entrée: Les champs de texte, les boutons, les listes déroulantes, les cases à cocher, les boutons radio, etc. sont les contrôles d'entrée qui nous permettent de lire les données de l'utilisateur.
- Composants de navigation: Des composants comme le menu, les barres latérales, le fil d'Ariane, etc. nous aident à naviguer dans l'application.
Décrivons maintenant quelques composants importants de l'interface graphique.
Frame en Java
Un cadre est une fenêtre graphique visible à l'écran. Un cadre peut être considéré comme un composant mais comme il forme une fenêtre physique que nous pouvons voir à l'écran, il est traité différemment des autres composants. Un cadre peut avoir d'autres composants graphiques tels que des boutons, des champs de texte, etc. et des panneaux également.
Les cadres ont également des méthodes qui ne sont pas prises en charge par d'autres composants. «Java.awt.Frame» représente une classe dans AWT tandis que JFrame est la classe contenue dans le package Java Swing qui représente un Frame.
Ainsi, toute application GUI commencera par construire un objet JFrame qui forme la fenêtre principale. Une fois l’objet JFrame créé, nous pouvons définir sa propriété visible sur true en appelant setVisible (‘true’). Ensuite, nous pouvons faire glisser et déposer les autres composants dans ce cadre.
Tous les composants de l'interface graphique, y compris les cadres, ont des propriétés communes car ils font partie d'une hiérarchie d'héritage commune illustrée ci-dessus. On peut donc dire qu'il existe un cas puissant de partage de code dans le package Java Swing.
La figure suivante montre une fenêtre frame typique dans l'éditeur GUI.
Comme nous pouvons le voir sur la figure ci-dessus, la fenêtre la plus à l'extérieur de l'éditeur de conception (marquée d'une petite flèche rouge) est le cadre. À l'intérieur de ce cadre, nous avons divers autres composants ou composants enfants du cadre.
Ceci est évident à partir du panneau sur le côté gauche qui montre une structure arborescente des composants. Comme indiqué par une flèche rouge plus grande, JFrame est le composant racine et tous les autres composants sont ses composants enfants.
JPanel en Java
Le conteneur JPanel fait partie du package Swing en Java. JPanel stocke un groupe de composants. JPanel a organisé les composants en utilisant la disposition définie par lui. Différentes dispositions peuvent aider JPanel à mieux organiser les composants.
JPanel est considéré comme un élément de base pour la disposition des composants dans un cadre ou à l'intérieur d'autres panneaux. Une application GUI a généralement Frame comme fenêtre principale et un ou plusieurs panneaux à l'intérieur pour contenir et organiser divers composants.
L'image suivante montre un exemple simple de panneau à l'intérieur d'un cadre.
Comme indiqué ci-dessus, un conteneur Panel est incorporé dans un conteneur de fenêtre Frame. Nous pouvons avoir un ou plusieurs panneaux ou même un panneau à l'intérieur d'un panneau. Ensuite, nous pouvons appliquer n'importe quel gestionnaire de disposition au panneau qui organisera les composants ou éléments à l'intérieur du panneau. Le gestionnaire de mise en page par défaut pour JPanel est «FlowLayout».
tableau java ajouter un élément à la fin
Mises en page GUI en Java
Le conteneur Java utilise une disposition automatique des composants à l'écran. Mais la taille et les positions des composants sont prises en charge par le «gestionnaire de mise en page». Le gestionnaire de disposition est défini pour un conteneur au moment de la conception. Il peut également être modifié dynamiquement.
Les dispositions courantes utilisées dans l'interface graphique Java sont:
# 1) BorderLayout
La disposition des bordures divise le composant en 5 zones, comme illustré ci-dessous.
Parmi ceux-ci, 4 zones à savoir «Nord», «Sud», «Est» et «Ouest» ne sont pas redimensionnables. La zone «Centre» est redimensionnable. Notez que chaque zone a une limite d'un seul composant et que les panneaux peuvent être utilisés pour contenir plusieurs composants.
# 2) FlowLayout: Cette disposition est utilisée pour contenir plusieurs composants. Plusieurs composants sont disposés horizontalement et ils s'enroulent si la largeur du conteneur est épuisée. De plus, les composants sont affichés dans l'ordre de gauche à droite.
# 3) Présentation de la boîte: En utilisant la disposition de la boîte, les composants sont disposés verticalement ou horizontalement. Cette disposition de la disposition de la boîte est indépendante de la taille du conteneur. Les composants du conteneur sont réglés de manière à remplir le conteneur et ont des tailles identiques.
Ce sont quelques-uns des composants importants et communs que nous avons dans le développement de l'interface graphique. Dans nos tutoriels ultérieurs sur AWT et Swing, nous entrerons dans les détails des autres composants fournis par ces packages.
Questions fréquemment posées
Q # 1) Qu'est-ce que la programmation GUI?
Répondre: Les programmes développés à l'aide de composants graphiques qui interagissent avec l'ordinateur à l'aide du dispositif de pointage et sont pilotés par les événements, c'est-à-dire qu'ils effectuent certaines actions lorsque certains événements sont déclenchés, et s'appellent programmation GUI.
Une programmation GUI utilise des frameworks GUI dans lesquels nous pouvons directement brancher et utiliser des composants graphiques.
Q # 2) Quelle interface graphique utiliser avec Java?
Réponse: Java prend en charge certains des meilleurs frameworks que nous pouvons utiliser pour développer des applications GUI, comme indiqué ci-dessous:
- JavaFX.
- Swing GUI Java.
- AWT: Boîte à outils de fenêtrage abstrait.
- Boîte à outils SWT- Standard Widget.
- Apache Pivot.
- SwingX.
- JGoodies.
- QtJambi.
Q # 3) Quels sont les avantages d'une interface graphique?
Répondre: Le programme GUI rend les applications interactives, intuitives et plus faciles à utiliser et à apprendre. Comme elles fournissent à l'utilisateur des visuels graphiques, les actions ont plus d'effet et nous obtenons ainsi un retour visuel immédiat sur l'application.
Q # 4) Qu'est-ce que l'API JavaFX?
Répondre: JavaFX est la dernière bibliothèque Java écrite dans le code Java natif et contient des classes et des interfaces. JavaFX peut être utilisé pour concevoir des applications GUI dans les versions Java ultérieures à Java 8.
Q # 5) Java est-il bon pour l'interface graphique?
Répondre: Bien que Java dispose de plus d'outils pour développer des applications GUI avec le meilleur support, il n'est pas aussi rapide et aussi efficace que la bibliothèque MFC de C ++ qui possède presque toutes les fonctionnalités pour développer des applications GUI avancées.
Conclusion
Dans ce tutoriel, nous avons exploré la programmation GUI en Java. Nous avons présenté certains des concepts importants de la programmation GUI en Java et avons également vu un aperçu des frameworks GUI pris en charge par Java. Nous avons discuté de la vue d'ensemble de la bibliothèque JFC.
=> Consultez TOUS les didacticiels Java ici.
lecture recommandée
- Introduction au langage de programmation Java - Tutoriel vidéo
- OOP Java: Introduction à la programmation orientée objet en Java
- Tutoriel Java Float avec des exemples de programmation
- Java Double - Tutoriel avec des exemples de programmation
- Tutoriel Java SWING: Conteneur, composants et gestion des événements
- Java Reverse String: Tutoriel avec des exemples de programmation
- Composants Java: plateforme Java, JDK, JRE et machine virtuelle Java
- Méthode Java String compareTo avec des exemples de programmation