1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225
| package com.laposte.sna.mascadia.vue;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import javax.swing.BorderFactory;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import com.laposte.sna.mascadia.controleur.ControleAdresseListener;
import com.laposte.sna.mascadia.controleur.EffacerContenuListener;
import com.laposte.sna.mascadia.controleur.ViderZoneDeSaisieListener;
/**
* @description cette classe represente un panneau qui sera ajoute à la frame
* principale sous forme d'onglet
* @version 2.00
* @author Florian Guérin
*/
public class PanneauControleAdresse extends JPanel {
public JComboBox m_cb_civilite;
public JTextField m_txt_nom = new JTextField("Nom");
public JTextField m_txt_prenom = new JTextField("Prénom");
public JTextField m_txt_remise = new JTextField(
"Numéro d'appartement, étage...");
public JTextField m_txt_complement_adr = new JTextField(
"Bâtiment, Immeuble...");
public JTextField m_txt_voie = new JTextField("Rue, Avenue, Cours...");
public JTextField m_txt_complement_commune = new JTextField();
public JTextField m_txt_code_postal = new JTextField();
public JTextField m_txt_pays = new JTextField();
/**
* CONSTRUCTEUR
*/
public PanneauControleAdresse() {
super();
this.setLayout(new BorderLayout());
// PARTIE CONTENU
// Panneau contenant les libelles des champs
JPanel panneauLabel = new JPanel(new GridLayout(7, 1, 5, 5));
panneauLabel.add(new JLabel("DESTINATAIRE"));
panneauLabel.add(new JLabel("REMISE"));
panneauLabel.add(new JLabel("COMPLEMENT"));
panneauLabel.add(new JLabel("NUMERO ET LIBELLE DE VOIE"));
panneauLabel.add(new JLabel("COMPLEMENT COMMUNE OU SERVICE POSTAL"));
panneauLabel.add(new JLabel("CODE POSTAL ET LOCALITE"));
panneauLabel.add(new JLabel("PAYS"));
// Panneau contenant les zones de saisie
JPanel panneauInput = new JPanel(new GridLayout(7, 1, 5, 5));
// Panneau contenant les saisies pour le destinataire
JPanel panneauDestinataire = new JPanel(new GridLayout(1, 3, 5, 5));
String[] civilite = { "Civilité", "M.", "Mme." };
m_cb_civilite = new JComboBox(civilite);
panneauDestinataire.add(m_cb_civilite);
panneauDestinataire.add(m_txt_nom);
panneauDestinataire.add(m_txt_prenom);
// Ajout du panneauDestinataire dans le panneauInput
panneauInput.add(panneauDestinataire);
// Suite des zones de saisie
JTextField m_txt_remise = new JTextField(
"Numéro d'appartement, étage...");
JTextField m_txt_complement_adr = new JTextField(
"Bâtiment, Immeuble...");
JTextField m_txt_voie = new JTextField("Rue, Avenue, Cours...");
JTextField m_txt_complement_commune = new JTextField();
JTextField m_txt_code_postal = new JTextField();
JTextField m_txt_pays = new JTextField();
// Ajout des zones de saisie au panneauInput
panneauInput.add(m_txt_remise);
panneauInput.add(m_txt_complement_adr);
panneauInput.add(m_txt_voie);
panneauInput.add(m_txt_complement_commune);
panneauInput.add(m_txt_code_postal);
panneauInput.add(m_txt_pays);
// Evenement pour vider les champs de saisies quand au clique
m_txt_nom.addMouseListener(new ViderZoneDeSaisieListener(m_txt_nom,
"Nom"));
m_txt_prenom.addMouseListener(new ViderZoneDeSaisieListener(
m_txt_prenom, "Prénom"));
m_txt_remise.addMouseListener(new ViderZoneDeSaisieListener(
m_txt_remise, "Numéro d'appartement, étage..."));
m_txt_complement_adr.addMouseListener(new ViderZoneDeSaisieListener(
m_txt_complement_adr, "Bâtiment, Immeuble..."));
m_txt_voie.addMouseListener(new ViderZoneDeSaisieListener(m_txt_voie,
"Rue, Avenue, Cours..."));
// Panneau contenant les feux d'emission des erreurs ou de validation
JPanel panneauFeux = new JPanel(new GridLayout(7, 1, 5, 5));
// Création de l'image des boutons par defaut
ImageIcon imgIcon = new ImageIcon("./lib/feu_blanc.png");
// Création des boutons
JButton bt_destinataire = new JButton("", imgIcon);
JButton bt_remise = new JButton("", imgIcon);
JButton bt_complementAdr = new JButton("", imgIcon);
JButton bt_voie = new JButton("", imgIcon);
JButton bt_complementCommune = new JButton("", imgIcon);
JButton bt_codePostal = new JButton("", imgIcon);
JButton bt_pays = new JButton("", imgIcon);
// Ajout les boutons au panel
panneauFeux.add(bt_destinataire);
panneauFeux.add(bt_remise);
panneauFeux.add(bt_complementAdr);
panneauFeux.add(bt_voie);
panneauFeux.add(bt_complementCommune);
panneauFeux.add(bt_codePostal);
panneauFeux.add(bt_pays);
// Panneau contenant les panneaux de libeles, de saisies et de feux
JPanel panneauContenu = new JPanel(new BorderLayout());
panneauContenu.setBorder(BorderFactory
.createTitledBorder("SAISIE D'ADRESSE"));
panneauContenu.add(panneauLabel, BorderLayout.WEST);
panneauContenu.add(panneauInput, BorderLayout.CENTER);
panneauContenu.add(panneauFeux, BorderLayout.EAST);
// Panneau correspondant au boutons
JPanel panneauBoutons = new JPanel(new FlowLayout());
JButton bt_controler = new JButton("Controler");
JButton bt_effacer = new JButton("Effacer");
JButton bt_enregistrer = new JButton("Enregistrer");
bt_enregistrer.setEnabled(false);
panneauBoutons.add(bt_controler);
panneauBoutons.add(bt_effacer);
panneauBoutons.add(bt_enregistrer);
// ActionListener des boutons
bt_controler.addActionListener(new ControleAdresseListener(
m_cb_civilite, m_txt_nom, m_txt_prenom, m_txt_remise,
m_txt_complement_adr, m_txt_voie, m_txt_complement_commune,
m_txt_code_postal, m_txt_pays));
bt_effacer.addActionListener(new EffacerContenuListener(m_cb_civilite,
m_txt_nom, m_txt_prenom, m_txt_remise, m_txt_complement_adr,
m_txt_voie, m_txt_complement_commune, m_txt_code_postal,
m_txt_pays));
this.add(panneauContenu, BorderLayout.NORTH);
this.add(panneauBoutons, BorderLayout.CENTER);
}
public JComboBox getM_cb_civilite() {
return m_cb_civilite;
}
public void setM_cb_civilite(JComboBox m_cb_civilite) {
this.m_cb_civilite = m_cb_civilite;
}
public JTextField getM_txt_nom() {
return m_txt_nom;
}
public void setM_txt_nom(JTextField m_txt_nom) {
this.m_txt_nom = m_txt_nom;
}
public JTextField getM_txt_prenom() {
return m_txt_prenom;
}
public void setM_txt_prenom(JTextField m_txt_prenom) {
this.m_txt_prenom = m_txt_prenom;
}
public JTextField getM_txt_remise() {
return m_txt_remise;
}
public void setM_txt_remise(JTextField m_txt_remise) {
this.m_txt_remise = m_txt_remise;
}
public JTextField getM_txt_complement_adr() {
return m_txt_complement_adr;
}
public void setM_txt_complement_adr(JTextField m_txt_complement_adr) {
this.m_txt_complement_adr = m_txt_complement_adr;
}
public JTextField getM_txt_voie() {
return m_txt_voie;
}
public void setM_txt_voie(JTextField m_txt_voie) {
this.m_txt_voie = m_txt_voie;
}
public JTextField getM_txt_complement_commune() {
return m_txt_complement_commune;
}
public void setM_txt_complement_commune(JTextField m_txt_complement_commune) {
this.m_txt_complement_commune = m_txt_complement_commune;
}
public JTextField getM_txt_code_postal() {
return m_txt_code_postal;
}
public void setM_txt_code_postal(JTextField m_txt_code_postal) {
this.m_txt_code_postal = m_txt_code_postal;
}
public JTextField getM_txt_pays() {
return m_txt_pays;
}
public void setM_txt_pays(JTextField m_txt_pays) {
this.m_txt_pays = m_txt_pays;
}
} |
Partager