Il affiche ce ke je veux mais s'il y a pas de poduit il affiche aussi

Résolu
amylee1984 Messages postés 153 Date d'inscription mardi 1 novembre 2005 Statut Membre Dernière intervention 20 août 2006 - 14 janv. 2006 à 03:06
amylee1984 Messages postés 153 Date d'inscription mardi 1 novembre 2005 Statut Membre Dernière intervention 20 août 2006 - 16 janv. 2006 à 18:22
bonjour, j'ai un petit probleme , je m'explique: j'ai 2 table client et produit la relation entre eux c'est le num de client,dans mon button suivant j'ai mis un code qui m'affiche le client suivant dans des TextFiled et ses produit dans un TextArea tout marche bien jusqu'a ici mais si le client n'a pas de poduit , là les produit de client précédent restent affichées dans le TextArea , vous pouvez m'aider svp ? voila le bout de code que j'ai mis :

suiv.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
try{
c2=c2+1;
if(c2==c)
{
c2=0;
}
tnum.setText(table[c2][0]);
tnom.setText(table[c2][1]);
tpre.setText(table[c2][2]);
tadr.setText(table[c2][3]);
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection dbcon = DriverManager.getConnection("jdbc:odbc:mehdi");
Statement s=dbcon.createStatement();
ResultSet aze1=s.executeQuery(" select * from p where num ="+tnum.getText());
String b="";
while(aze1.next())
{
b=b+'\n'+aze1.getString(2);
if(b.compareTo("")!=0)
{
TextArea1.setText(b);
}
else{
TextArea1.setText(null);
}

}
}
catch(ClassNotFoundException ez)
{
System.out.print("message d'erreur 1 "+ez);
}
catch(SQLException ee){
System.out.print("message d'erreur 2 "+ee);}
}});

Merci d'avance

2 réponses

cs_gattous Messages postés 100 Date d'inscription vendredi 25 février 2005 Statut Membre Dernière intervention 7 octobre 2007
16 janv. 2006 à 15:53
Bon, ce que je vais te proposer ici n'est qu'une idée, à toi de la formuler en code. Ajoute une méthode dans ton code qui te permet de "nettoyer" les différents champs (les mettre tous à .setText="" par exple).Lorsque tu cliques sur le bouton "suivant", et avant de remplir les champs, tu fais appel à cette méthode. D'autre part un conseil, utilise la méthode "equals" à la place de "compareTo" , c'est plus facile , plus léger et ça retourne directement une valeur bool. J'espere que ceci pourra t'aider.
3
amylee1984 Messages postés 153 Date d'inscription mardi 1 novembre 2005 Statut Membre Dernière intervention 20 août 2006 3
16 janv. 2006 à 18:22
bonjour, Merci gattous pour ton idée je l'ai applicé et ca marche nikel . au fait j'ai éliminé le code suivant
else{
TextArea1.setText(null);
}

et j'ai mis en haut de String b="";

la ligne TextArea1.setText("");
comme ca il va me vider le textarea achaque fois avant d'execute la requete .


voila si ca peut aider qlq 1 d'autre


merci à vous
3
Rejoignez-nous