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
| package Index;
import java.awt.* ;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.JPanel.*;
import javax.swing.event.*;
import javax.swing.Icon.*;
import java.sql.*;
import javax.swing.JFrame.*;
import javax.swing.JDialog.*;
import java.util.*;
/**
*
* @author ***
*/
public class ajoutCable extends JPanel {
private JPanel pan1,pan2;
private JLabel message, messNumCable, messLieu, messEtage;
private JButton boutonValLieu, boutonValEtage, boutonValLocal;
private Fenetre parent;
private JComboBox numLibre, lieu, etage;
/** Creates a new instance of ajoutCable */
public ajoutCable(Fenetre p, Connection co) {
parent = p;
//déclarations et placement des composants
//this.setLayout (new GridLayout(2,1,0,0));
this.setLayout (new BorderLayout(20,20));
//création, remplissage et placement du panneau titre
pan1 = new JPanel();
pan1.setLayout(new FlowLayout());
message= new JLabel("Insertion d'un nouveau câble VOICE");
message.setForeground(java.awt.Color.BLUE);
message.setFont(new Font("Arial",Font.BOLD,16));
pan1.add(message);
this.add("North",pan1);
//création, remplissage et placement du panneau de champs
pan2 = new JPanel();
pan2.setLayout(new FlowLayout());
messNumCable= new JLabel("Numéro de câble : ");
pan2.add(messNumCable);
Vector vect=new Vector();
try
{
ResultSet res = AccesGen.executeQuery(co, "SELECT NumCable FROM VOICE");
// On défini une valeur de départ :
int cursor = 1;
while (res.next())
{
// Pour chaque valeur présente dans la base :
int value = res.getInt("NumCable");
// Et on boucle sur toutes les valeurs entre le curseur et la valeur retournée :
for (int i=cursor; i<value; i++)
{
// TODO : la valeur 'i' n'est pas présente dans la base
vect.add (i);
}
// On incrémente le curseur avant de passer au suivant :
cursor = value + 1;
}
vect.add (cursor);
}
catch(SQLException sqle)
{
System.out.println("Erreur SQL : " + sqle);
JOptionPane.showMessageDialog(null, "Error SQL","ERROR",JOptionPane.ERROR_MESSAGE);
}
numLibre = new JComboBox(vect);
pan2.add(new JScrollPane(numLibre));
messLieu=new JLabel(" Lieu :");
pan2.add(messLieu);
Vector vect2=new Vector();
try
{
ResultSet res = AccesGen.executeQuery(co, "SELECT Lieu FROM LIEU");
String donnees2="abc";
while (res.next())
{
//Pour chaque valeur présente dans la base :
String donnees = res.getString("Lieu");
if (donnees.equals(donnees2))
{
//test
}
else
{
vect2.add(donnees);
}
donnees2 = donnees;
}
}
catch(SQLException sqle)
{
System.out.println("Erreur SQL : " + sqle);
JOptionPane.showMessageDialog(null, "Error SQL","ERROR",JOptionPane.ERROR_MESSAGE);
}
lieu = new JComboBox(vect2);
pan2.add(new JScrollPane(lieu));
this.add("Center",pan2);
String lieux=lieu.getSelectedItem().toString();
Vector vect3=new Vector();
try
{
ResultSet res = AccesGen.executeQuery(co, "SELECT Etage FROM LIEU WHERE Lieu = '"+ lieux +"'");
String donnees3="abc";
while (res.next())
{
//Pour chaque valeur présente dans la base :
String donnees = res.getString("Etage");
if (donnees.equals(donnees3))
{
//test
}
else
{
vect3.add(donnees);
}
donnees3 = donnees;
}
}
catch(SQLException sqle)
{
System.out.println("Erreur SQL : " + sqle);
JOptionPane.showMessageDialog(null, "Error SQL","ERROR",JOptionPane.ERROR_MESSAGE);
}
messEtage=new JLabel(" Etage :");
pan2.add(messEtage);
etage = new JComboBox(vect3);
pan2.add(new JScrollPane(etage));
this.add("Center",pan2);
MonGestionnaireAction x=new MonGestionnaireAction();
lieu.addItemListener(x);
setVisible(true);
}
private class MonGestionnaireAction implements ItemListener {
public void itemStateChanged(ItemEvent e)
{
/*if (e.getStateChange() == ItemEvent.SELECTED)
{
pan1.removeAll();
pan1.repaint();
//pan1.updateUI();
setVisible(true);
}*/
switch (e.getStateChange()) {
case ItemEvent.DESELECTED: // si une valeur a été désélectionnée
etage.setVisible(false);
break;
case ItemEvent.SELECTED: // si une valeur a été sélectionnée
etage.setVisible(true);
break;
}
}
}
} |