cs_noumian
Messages postés49Date d'inscriptionsamedi 2 avril 2005StatutMembreDernière intervention 3 décembre 2008
-
13 avril 2007 à 09:28
cs_noumian
Messages postés49Date d'inscriptionsamedi 2 avril 2005StatutMembreDernière intervention 3 décembre 2008
-
15 avril 2007 à 21:12
Bonjour j'ai un tableau de string :
String mois [] ={"jan","fev"'....,"dec"};
String month []={"january","febuary",...,"december"};
j'ai un JTree que je cree comme ceci :
JTree mon_cal = new JTree(mois);
question: comment a l'aide d'un click sur un boutton (action performed) puis je changer la racine de mon jtree?
gmi19oj19
Messages postés545Date d'inscriptionlundi 10 mai 2004StatutMembreDernière intervention28 septembre 20112 13 avril 2007 à 13:39
Salut,
J'oubliais :
anglais est un booleen (variable d'nstance) permettant de modifier ta langue^^
Par contre, si le but est seulement de faire une appli multi-langues, jette plutot un oeil du coté de tout ce qi est localisation (classe Locale, cf javadoc et google )
cs_noumian
Messages postés49Date d'inscriptionsamedi 2 avril 2005StatutMembreDernière intervention 3 décembre 2008 15 avril 2007 à 10:54
desole ca ne marche pas , ma jtree n'est plus fonctionelle, cad que l'ancienne jtree reste afichee sans changement et ne marche plus.
que veux tu dire par classe anonyme? ma classe est : public class lang
( le but n'est pas de faire une appli multi -langues)
cs_noumian
Messages postés49Date d'inscriptionsamedi 2 avril 2005StatutMembreDernière intervention 3 décembre 2008 15 avril 2007 à 12:54
ok, en fait c'est pas des langues, jcroyais que ca aurait ete plus rapide avec un petit exemple
voici en realite ce que je veux faire ,je veux extraire les noms d'une table dans une base de donnees mysql et les mettre dans une jtree.
et jfais aussi un textfield ou je pourrais faire une rechere par Jtextfield.getname et changer ma jtree par un carretlistenner sur mon jtextfield ()
voici la fonction qui creer le jtree :
private JTree getJTree1() {
if (jTree1 = = null) {
try{
Class.forName("com.mysql.jdbc.Driver");
Connection cnx = DriverManager.getConnection(url);
Statement sqlquery = cnx.createStatement();
ResultSet res = sqlquery.executeQuery("select nom from etudiant");
DefaultMutableTreeNode etudiant = new DefaultMutableTreeNode("Nom");
DefaultMutableTreeNode insa = new DefaultMutableTreeNode("Inscrits");
bank.add(insa);
while (res.next()){
insa.add(new DefaultMutableTreeNode(res.getString(1)));
}
jTree1 = new JTree(etudiant);
cnx.close();
}
catch(Exception ex){
System.out.print("error : "+ex.getMessage());
}
}
return jTree1;
}
et voici le code sur mon textfield:
private JTextField getLk() {
if (lk == null) {
lk = new JTextField();
lk.addCaretListener(new javax.swing.event.CaretListener() {
public void caretUpdate(javax.swing.event.CaretEvent e) {
String l = lk.getText();
try{
Class.forName("com.mysql.jdbc.Driver");
Connection cnx = DriverManager.getConnection(url);
Statement sqlquery = cnx.createStatement();
ResultSet res = sqlquery.executeQuery("select nom from bank.client where nom like '"+l+"%' ");
DefaultMutableTreeNode eudiant = new DefaultMutableTreeNode("Search");
while (res.next()){
bank.add(new DefaultMutableTreeNode(res.getString(1)));
}
jTree1 = new JTree(etudiant);
jTree1.repaint();
cnx.close();
}
catch(Exception ex){
System.out.print("error : "+ex.getMessage());
}
}
});
}
return lk;
}
voila
le premier lancement du programme marche bien, afiche tous les noms des etudiants dans ma base
des que je tape une lettre dans mon textfield , ma requete sql est correcte, mais la jtree ne change pas
voila
help
ouais man
gmi19oj19
Messages postés545Date d'inscriptionlundi 10 mai 2004StatutMembreDernière intervention28 septembre 20112 15 avril 2007 à 17:38
Salut,
C'est izarre que ça compile, normalement ça devrait pas. Ton CaretListener est dans une classe abstraite (cf plus haut) qui ne connait aps ton jTree1... Essaie :
NomDeTaClasse.this.jTree1 = new JTree(etudiant);
NomDeTaClasse.this.jTree1.repaint();
Et vérifie que tu compiles les bons fichiers, parce que ça me parait louche tout ça...
cs_noumian
Messages postés49Date d'inscriptionsamedi 2 avril 2005StatutMembreDernière intervention 3 décembre 2008 15 avril 2007 à 21:12
si si ,il le connait, les deux methodes sont de la meme clasee dans le meme ficher source
jsuis sous eclipse, s'il ne le connaissait pas,ce devrait signaler