Package fr.cnam.ihm
Class Formulaire
- java.lang.Object
-
- fr.cnam.ihm.Formulaire
-
public class Formulaire extends java.lang.Object
Classe de définition d'un formulaire JAVA permettant de faire à minima une IHM Java pour saisir des informations et faire des actions via des boutons.
Pour cela, il faut que l'applicatif implémente les méthodes de l'interface FormulaireInt.
-
-
Constructor Summary
Constructors Constructor Description Formulaire(java.lang.String titre, FormulaireInt app, int width, int height)
Constructeur d'un formulaire.Formulaire(java.lang.String titre, FormulaireInt app, int width, int height, boolean avecFrame)
Constructeur d'un formulaire.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
activer(java.lang.String nom)
activer un des composants du formulairevoid
addButton(java.lang.String nom, java.lang.String button)
Ajout dans le formulaire d'un bouton.CanvasIHM
addCanvasIHM(int width, int height, ControlesCanvasIHM controle)
Methode qui ajoute un canvas de grilleCanvasIHM
addGrilleIHM(int nbLigne, int nbColonne, int tailleCase, ControlesCanvasIHM controle)
Methode qui ajoute un canvas de grillejavax.swing.JLabel
addImage(java.lang.String nom, int x, int y, int width, int height, java.lang.String pathImage, boolean cursorMove)
Ajout d'une imagevoid
addLabel(java.lang.String label)
Ajout d'un label dans le formulairel.void
addListeChoix(java.lang.String nom, java.lang.String label, java.lang.String[] liste, boolean action, java.lang.String valinit)
Ajout dans le formulaire d'une liste de choix de saisie composé d'un label et d'une liste de choix.void
addListScroll(java.lang.String nom, java.lang.String titre, boolean editable, java.lang.String[] values, int width, int height)
Ajout dans le formulaire d'une liste scrollable de valeurs.void
addPanel(javax.swing.JPanel panel, int width, int height)
Ajout d'un Panel dans le formulairevoid
addPosition(int deltax, int deltay)
Change la position courante par deltavoid
addText(java.lang.String nom, java.lang.String label, boolean editable, java.lang.String value)
Ajout dans le formulaire un texte de saisie composé d'un label et d'une zone de saisie.void
addZoneText(java.lang.String nom, java.lang.String label, boolean editable, java.lang.String value, int width, int height)
Ajout dans le formulaire d'un texte de saisie multi-ligne composé d'un label et d'une zone de saisie.void
afficher()
Affichage du formulaire.void
afficher(int x, int y)
Affichage du formulaire en x,y de l'ecranjava.lang.String
choisirFichier(java.lang.String directory)
Cette methode permet de choisir un fichier sur le disquevoid
desactiver(java.lang.String nom)
desactiver un des composants du formulairevoid
dessous(int posx)
Change la position courante en passant a la ligne suivante en position posxvoid
fermer()
Permet de fermer le formulairejavax.swing.JPanel
getPanel()
Retourne le panel principal du formulairejava.lang.String
getValeurChamp(java.lang.String nom)
Méthode qui retourne la valeur d'un champ.int
getXCour()
Retourne la position courante en X de la position des élémentsint
getYCour()
Retourne la position courante en Y de la position des élémentsvoid
horizontal()
change le sens en HORIZONTALstatic java.lang.String[]
lireFichierTexte(java.lang.String nomFichier)
Cette methode statique permet de lire un fichier textevoid
setApp(FormulaireInt app)
Initialise l'applicatif.
Cette méthode est utilisée dans le cas où quand on crée le formulaire on ne connait pas encore l'applicatif qui gère le formulaire.void
setAutoWidth(boolean auto)
Le contour des textes de Label Text et Button sont autoamtiquement ou pas ajuster a la taille du textevoid
setButtonFermer(java.lang.String nomButton)
Designe le bouton qui ferme la fenetrevoid
setHeightText(int height)
Change la hauteur courante d'un text ou d'un label ou boutonvoid
setImage(javax.swing.JLabel label, java.lang.String pathImage)
Changer l'image d'un JLabelvoid
setListData(java.lang.String nom, java.lang.String[] values)
Méthode qui change les valeurs d'une liste de scrollvoid
setPosition(int x, int y)
Change la position courantevoid
setTailleFonte(int taille)
Change la taille de la fonte courante d'un text ou d'un lable ou d'un boutonvoid
setValeurChamp(java.lang.String nom, java.lang.String valeur)
Méthode qui change la valeur d'un champ.void
setWidthButtonCour(int width)
Change la largeur courante des boutonsvoid
setWidthGapCour(int width)
Change la largeur courante de séparation entre le label et le texte des champs de saisivoid
setWidthLabelCour(int width)
Change la largeur courante des labelvoid
setWidthTextCour(int width)
Change la largeur courante des textes de saisivoid
vertical()
change le sens en VERTICAL
-
-
-
Constructor Detail
-
Formulaire
public Formulaire(java.lang.String titre, FormulaireInt app, int width, int height)
Constructeur d'un formulaire.- Parameters:
titre
- Titre affiché dans le bandeau de la fenetreapp
- Un objet dont la classe implémente l'interface FormualaireIntwidth
- longueur du formulaireheight
- hauteur du formulaire
-
Formulaire
public Formulaire(java.lang.String titre, FormulaireInt app, int width, int height, boolean avecFrame)
Constructeur d'un formulaire.- Parameters:
titre
- Titre affiché dans le bandeau de la fenetreapp
- Un objet dont la classe implémente l'interface FormualaireIntwidth
- longueur du formulaireheight
- hauteur du formulaireavecFrame
- si false alors pas de frame cree : que le panel. Ceci permet d'incruster un formulaire dans une IHM existante (un autre formulaire)
-
-
Method Detail
-
setApp
public void setApp(FormulaireInt app)
Initialise l'applicatif.
Cette méthode est utilisée dans le cas où quand on crée le formulaire on ne connait pas encore l'applicatif qui gère le formulaire. On appelle alors cette méthode pour initialiser l'applicatif du formulaire.- Parameters:
app
- Un objet qui implémente l'interface Formulaireint
-
getPanel
public javax.swing.JPanel getPanel()
Retourne le panel principal du formulaire- Returns:
- panel principal du formulaire
-
getXCour
public int getXCour()
Retourne la position courante en X de la position des éléments- Returns:
- int la valeur X
-
getYCour
public int getYCour()
Retourne la position courante en Y de la position des éléments- Returns:
- int la valeur Y
-
setPosition
public void setPosition(int x, int y)
Change la position courante- Parameters:
x
- position en abscisse (horizontal) de la fenetrey
- position en ordonnée (vertical) de la fenetre
-
addPosition
public void addPosition(int deltax, int deltay)
Change la position courante par delta- Parameters:
deltax
- position en abscisse (horizontal) de la fenetredeltay
- position en ordonnée (vertical) de la fenetre
-
setTailleFonte
public void setTailleFonte(int taille)
Change la taille de la fonte courante d'un text ou d'un lable ou d'un bouton- Parameters:
taille
- (int) taille de la fonte (8, 9, 10, 11, ....)
-
setHeightText
public void setHeightText(int height)
Change la hauteur courante d'un text ou d'un label ou bouton- Parameters:
height
- (int) hauteur en pixel
-
dessous
public void dessous(int posx)
Change la position courante en passant a la ligne suivante en position posx- Parameters:
posx
- nouvelle position courante en x
-
horizontal
public void horizontal()
change le sens en HORIZONTAL
-
vertical
public void vertical()
change le sens en VERTICAL
-
setAutoWidth
public void setAutoWidth(boolean auto)
Le contour des textes de Label Text et Button sont autoamtiquement ou pas ajuster a la taille du texte- Parameters:
auto
- boolean
-
setWidthLabelCour
public void setWidthLabelCour(int width)
Change la largeur courante des label- Parameters:
width
- nouvelle largeur courante
-
setWidthTextCour
public void setWidthTextCour(int width)
Change la largeur courante des textes de saisi- Parameters:
width
- nouvelle largeur courante
-
setWidthGapCour
public void setWidthGapCour(int width)
Change la largeur courante de séparation entre le label et le texte des champs de saisi- Parameters:
width
- nouvelle largeur courante
-
setWidthButtonCour
public void setWidthButtonCour(int width)
Change la largeur courante des boutons- Parameters:
width
- nouvelle largeur courante
-
afficher
public void afficher()
Affichage du formulaire.
-
afficher
public void afficher(int x, int y)
Affichage du formulaire en x,y de l'ecran- Parameters:
x
- position en X du formulairey
- position en Y du formulaire
-
fermer
public void fermer()
Permet de fermer le formulaire
-
addLabel
public void addLabel(java.lang.String label)
Ajout d'un label dans le formulairel.- Parameters:
label
- Valeur du label
-
addText
public void addText(java.lang.String nom, java.lang.String label, boolean editable, java.lang.String value)
Ajout dans le formulaire un texte de saisie composé d'un label et d'une zone de saisie.- Parameters:
nom
- Le nom du champlabel
- Chaine qui précéde la zone de saisieeditable
- détermine si la zone de saisie est éditablevalue
- valeur initiale dans la zone de saisie
-
addListeChoix
public void addListeChoix(java.lang.String nom, java.lang.String label, java.lang.String[] liste, boolean action, java.lang.String valinit)
Ajout dans le formulaire d'une liste de choix de saisie composé d'un label et d'une liste de choix.- Parameters:
nom
- Le nom du champlabel
- Chaine qui précéde la zone de saisieliste
- tableau de la liste de choixaction
- si vrai alors l'action est réalisée dès que l'on cliquevalinit
- valeur inital sélectionnée
-
addZoneText
public void addZoneText(java.lang.String nom, java.lang.String label, boolean editable, java.lang.String value, int width, int height)
Ajout dans le formulaire d'un texte de saisie multi-ligne composé d'un label et d'une zone de saisie.- Parameters:
nom
- Le nom du champlabel
- Chaine qui précéde la zone de saisieeditable
- détermine si la zone de saisie est éditablevalue
- valeur initiale dans la zone de saisiewidth
- longueur de la zone de texteheight
- hauteur de la zone de texte
-
addListScroll
public void addListScroll(java.lang.String nom, java.lang.String titre, boolean editable, java.lang.String[] values, int width, int height)
Ajout dans le formulaire d'une liste scrollable de valeurs.- Parameters:
nom
- Le nom de la liste scrollabletitre
- Titre qui précéde la listeeditable
- détermine si la zone de saisie est éditablevalues
- valeur initiale dans la zone de saisiewidth
- longueur de la zone (ou -1)height
- hauteur de la zone
-
addImage
public javax.swing.JLabel addImage(java.lang.String nom, int x, int y, int width, int height, java.lang.String pathImage, boolean cursorMove)
Ajout d'une image- Parameters:
nom
- le nom de l'image (nom de l'action si clique dans l'image)x
- position en x de l'imagey
- position en y de l'imagewidth
- taille en longueur de l'imageheight
- taille eh hauteur de l'imagepathImage
- path du fichier de l'image (.jpg, .gif, .bmp, ....)cursorMove
- si True alors le pointeur souris se change en une main lors du survol de la souris sur l'image- Returns:
- JLabel le label créé contenant l'image La valeur de retour de type JLabel permet de changer l'image en appelant la méthode setImage.
-
setImage
public void setImage(javax.swing.JLabel label, java.lang.String pathImage)
Changer l'image d'un JLabel- Parameters:
label
- le JLabel dont on veut changerl'imagepathImage
- path de l'image
-
setButtonFermer
public void setButtonFermer(java.lang.String nomButton)
Designe le bouton qui ferme la fenetre- Parameters:
nomButton
- le nom du bouton
-
addButton
public void addButton(java.lang.String nom, java.lang.String button)
Ajout dans le formulaire d'un bouton.- Parameters:
nom
- Le nom du boutonbutton
- Texte du bouton
-
addPanel
public void addPanel(javax.swing.JPanel panel, int width, int height)
Ajout d'un Panel dans le formulaire- Parameters:
panel
- le panel a ajouterwidth
- largeur du panelheight
- hauteur du panel
-
addGrilleIHM
public CanvasIHM addGrilleIHM(int nbLigne, int nbColonne, int tailleCase, ControlesCanvasIHM controle)
Methode qui ajoute un canvas de grille- Parameters:
nbLigne
- nombre de ligne de la grillenbColonne
- nombre de colonne de la grilletailleCase
- taille de la case (en pixel)controle
- objet dont la classe surcharge les méthodes de l'interface ControlesCanvasIHM. Il permet de réaliser les actions réalisées dans la grille.- Returns:
- retourne la grille d'IHM
-
addCanvasIHM
public CanvasIHM addCanvasIHM(int width, int height, ControlesCanvasIHM controle)
Methode qui ajoute un canvas de grille- Parameters:
width
- largeur du canvasheight
- hauteur du canvascontrole
- objet dont la classe surcharge les méthodes de l'interface ControlesCanvasIHM. Il permet de réaliser les actions réalisées dans la grille.- Returns:
- retourne la grille d'IHM
-
getValeurChamp
public java.lang.String getValeurChamp(java.lang.String nom)
Méthode qui retourne la valeur d'un champ.- Parameters:
nom
- Le nom du champ- Returns:
- valeur la nouvelle valeur du champ
-
setValeurChamp
public void setValeurChamp(java.lang.String nom, java.lang.String valeur)
Méthode qui change la valeur d'un champ.- Parameters:
nom
- Le nom du champvaleur
- la nouvelle valeur du champ
-
setListData
public void setListData(java.lang.String nom, java.lang.String[] values)
Méthode qui change les valeurs d'une liste de scroll- Parameters:
nom
- Le nom du champvalues
- la nouvelle liste de valeur
-
desactiver
public void desactiver(java.lang.String nom) throws java.lang.RuntimeException
desactiver un des composants du formulaire- Parameters:
nom
- Nom du composant- Throws:
java.lang.RuntimeException
-
activer
public void activer(java.lang.String nom) throws java.lang.RuntimeException
activer un des composants du formulaire- Parameters:
nom
- Nom du composant- Throws:
java.lang.RuntimeException
-
choisirFichier
public java.lang.String choisirFichier(java.lang.String directory)
Cette methode permet de choisir un fichier sur le disque- Parameters:
directory
- nom relatif ou absolu du répertoire initial- Returns:
- retourne le nom absolu fichier sélectionné ou null si annuler
-
lireFichierTexte
public static java.lang.String[] lireFichierTexte(java.lang.String nomFichier)
Cette methode statique permet de lire un fichier texte- Parameters:
nomFichier
- le path relatif ou absolu du fichier a lire- Returns:
- un tableau de caractere contenant chaque ligne du fichier
-
-