Package fr.cnam.ihm
Class Formulaire
- java.lang.Object
-
- fr.cnam.ihm.Formulaire
-
public class Formulaire extends java.lang.ObjectClasse 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 voidactiver(java.lang.String nom)activer un des composants du formulairevoidaddButton(java.lang.String nom, java.lang.String button)Ajout dans le formulaire d'un bouton.CanvasIHMaddCanvasIHM(int width, int height, ControlesCanvasIHM controle)Methode qui ajoute un canvas de grilleCanvasIHMaddGrilleIHM(int nbLigne, int nbColonne, int tailleCase, ControlesCanvasIHM controle)Methode qui ajoute un canvas de grillejavax.swing.JLabeladdImage(java.lang.String nom, int x, int y, int width, int height, java.lang.String pathImage, boolean cursorMove)Ajout d'une imagevoidaddLabel(java.lang.String label)Ajout d'un label dans le formulairel.voidaddListeChoix(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.voidaddListScroll(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.voidaddPanel(javax.swing.JPanel panel, int width, int height)Ajout d'un Panel dans le formulairevoidaddPosition(int deltax, int deltay)Change la position courante par deltavoidaddText(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.voidaddZoneText(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.voidafficher()Affichage du formulaire.voidafficher(int x, int y)Affichage du formulaire en x,y de l'ecranjava.lang.StringchoisirFichier(java.lang.String directory)Cette methode permet de choisir un fichier sur le disquevoiddesactiver(java.lang.String nom)desactiver un des composants du formulairevoiddessous(int posx)Change la position courante en passant a la ligne suivante en position posxvoidfermer()Permet de fermer le formulairejavax.swing.JPanelgetPanel()Retourne le panel principal du formulairejava.lang.StringgetValeurChamp(java.lang.String nom)Méthode qui retourne la valeur d'un champ.intgetXCour()Retourne la position courante en X de la position des élémentsintgetYCour()Retourne la position courante en Y de la position des élémentsvoidhorizontal()change le sens en HORIZONTALstatic java.lang.String[]lireFichierTexte(java.lang.String nomFichier)Cette methode statique permet de lire un fichier textevoidsetApp(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.voidsetAutoWidth(boolean auto)Le contour des textes de Label Text et Button sont autoamtiquement ou pas ajuster a la taille du textevoidsetButtonFermer(java.lang.String nomButton)Designe le bouton qui ferme la fenetrevoidsetHeightText(int height)Change la hauteur courante d'un text ou d'un label ou boutonvoidsetImage(javax.swing.JLabel label, java.lang.String pathImage)Changer l'image d'un JLabelvoidsetListData(java.lang.String nom, java.lang.String[] values)Méthode qui change les valeurs d'une liste de scrollvoidsetPosition(int x, int y)Change la position courantevoidsetTailleFonte(int taille)Change la taille de la fonte courante d'un text ou d'un lable ou d'un boutonvoidsetValeurChamp(java.lang.String nom, java.lang.String valeur)Méthode qui change la valeur d'un champ.voidsetWidthButtonCour(int width)Change la largeur courante des boutonsvoidsetWidthGapCour(int width)Change la largeur courante de séparation entre le label et le texte des champs de saisivoidsetWidthLabelCour(int width)Change la largeur courante des labelvoidsetWidthTextCour(int width)Change la largeur courante des textes de saisivoidvertical()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.RuntimeExceptiondesactiver 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.RuntimeExceptionactiver 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
-
-