Using the NetBeans Swing GUI Builder
Author: Bob Jacobsen
Keywords: JMRI technical code NetBeans

Des morceaux de code de l'Interface Graphique Utilisateur ( GUI ) de JMRI sont maintenus par l'utilisation de NetBeans Swing GUI Builder ( le "Builder" ). cette page est un guide pour l'utilisation de l'outil Builder. Voir Construire avec NetBeans pour une introduction générale de l'utilisation de NetBeans pour la maintenance de JMRI.

# Utilisation du NetBeans Swing GUI Builder

- Introduction
- Utilisation de Builder
- Examen du Code
  - .java File
  - .form File
- Voir Aussi

## Introduction

NetBeans 7.4 ou 8.0 inclut un Swing GUI Builder qui rend plus aisé la maintenance d'un Java Swing-based GUI (tel que JMRI ) que l'écriture de l'interface utilisateur entièrement à la main.

Cet outil peut créer du code qui n'est pas idéalement séparé en code Java généré et maintenu par l'homme. Si vous utilisez Netbeans, vous êtes protégé de ceci, car le Builder réalise une bonne intégration de ses affichages avec l'éditeur de source. Cependant, si vous utilisez un autre éditeur, vous y serez exposé.

## Utilisation de Builder

La barre d'outil de l'éditeur NetBeans contiendra automatiquement un bouton Design si la Classe devant être éditée peut aussi être éditée dans le Swing GUI Builder.

Cliquer sur le bouton Design donnera la possibilité de glisser les boutons, labels, panneaux et autres objets sur une fenêtre pour les placer visuellement. Tout objet conforme au standard JavaBean peut être placé sur la fenêtre et lié à d'autres objets sur cette fenêtre, même s'il n'a pas de représentation visuelle.

Où le Builder ne peut pas généré automatiquement du code, il fournit des méthodes vides, ou tronquées, qui peuvent être complétées pour mettre en œuvre la logique souhaitée, et passe automatiquement à l'affichage du code au besoin.

## Examen du Code

Le Builder maintient deux fichiers: un fichier.java contenant le code compilable, et un fichier .form, contenant une représentation XMLde l'interface graphique avec le code qui est utilisé pour créer la méthode initComponents() dans le fichier .java.

### Fichier .java

Dans NetBeans, le code généré par le Builder, ressemble à n'importe quel autre code java, mais des portions ne peuvent pas être modifiées ( simplement NetBeans n'autorise pas le changement du code ). Des bouts de méthodes seront modifiables, cependant, il ne sera pas possible de changer les signatures de méthode ( nom, paramètres, valeurs retournées, ou throws clauses ).

Une méthode, `private void initComponents()`

D'autre outils, cependant, afficheront le code de façon très différente, et Code contiendra les marques non-standards suivantes, bien que valides, comme les commentaires qui sont cachés dans NetBeans:

// <editor-fold defaultstate="collapsed" desc="Generated Code">
  Masquer tout entre elle et `// </editor-fold>` avec la description Generated Code dans NetBeans et autres éditeurs qui le reconnaissent. Le code entre cess deux commentaires peut être affiché en cliquant l'icône + à gauche de la description dans ces éditeurs. C'est utilisé pour cacher le code qui ne devrait pas être modifié manuellement.
// </editor-fold>
  Utilisé avec `// <editor-fold defaultstate="collapsed" desc="Generated Code">`. Voir la description commentaire pour plus d'informations.
//GEN-BEGIN:<token>
  Précède une méthode ou un bloc de variable qui est entiérement généré par le Builder. Une telle méthode ou bloc est suivi d'un `//GEN-END:<token>`commentaire correspondant.
//GEN-END:<token>
  Suit une méthode ou un bloc de variable qui est entiérement généré par le Builder. Une telle méthode ou bloc est précédé d'un `//GEN-BEGIN:<token>`commentaire correspondant.
//GEN-FIRST:<token>
  Précède une méthode qui génère du code appelé, mais le contenu de celui-ci est écrit par un développeur. Une telle méthode est suivi par un `//GEN-LAST:<token>` commentaire correspondant. Le signe est souvent `event_<methodName>`.
//GEN-LAST:<token>
  Suit une méthode qui génère du code appelé, mais le contenu de celui-ci est écrit par un développeur. Ce commentaire marque l'accolade fermante dans la méthode précédée par un `//GEN-FIRST:<token>`commentaire correspondant.

### Fichier .form

Le fichier .form est entièrement caché au sein d'un IDE NetBeans.L'ouverture d'un fichier .java avec son fichier correspondaznt .form ( le même nom de fichier dans le même paquet ) ajoutera le bouton Design à la baree d'outil de l'éditeur, permettant au Builder d'être utilisé.

Le fichier .form est un fichier XML adhérant à la DTD dans le code source NetBeans ( lié à la tête de l'arbre NetBeans ). NetBeans utilise ce fichier pour stocker des informations supplémentaires en dehors de la spécification JavaBeans ce qui est nécessaire pour générer correctement la méthode `initComponents()`, des bouts de méthodes et des listes de variables. En absence d'autres changements dans le fichier .java, ce fichier pourra être utilisé pour générer entièrement un neouveau fichier. java, si cela est nécessaire.

Ce fichier ne devrait pas être modifié à la main, mais devrait être généré par le Builder.

## Voir aussi

- Designing a Swing GUI in NetBeans IDE
- Java GUI Applications Learning Trail