Bonjour, voila je travaille en AWT, et j'aimerais après une recherche
pouvoir modifier les elements de mon textfield pour modifier mas base
de donner accès :
je sais qu'il faut utiliser : public void textValueChanged(TextEvent txt) et TextListener mais comment ????
Voila mon code au niveau du du panneau de modification :
package magasin;
import java.awt.*;
import java.awt.event.*;
public class PanModifCli extends Panel implements ActionListener
{
Panel pQuestion,donee,pmodif;
String []tab=new String[10];
Button go = new Button("Rechercher");
Button Del = new Button("Modifier");
TextField tf = new TextField();
Label etatl=new Label("EN COURS");
String[] liste = {"numeros de
client:","nom:","prenom:","CP:","Ville:","rue","num","telephone:","fax","numeros
de tva:"};
String champs[]={"","","","","","","","","",""};
Titre t1=new Titre(liste);
Titre t2=new Titre(champs);
PanneauData pdta =new PanneauData(t1,t2);
Frame parent;
public PanModifCli()
{}
public PanModifCli(Frame parent){
this.parent=parent;
GridLayout gl = new GridLayout(4,1,2,2);
setLayout(gl);
pdta=new PanneauData(t1,t2);
pQuestion = new Panel();
donee = new Panel();
Label l = new Label("Numero recherché : ");
l.setForeground(Color.black);
Font f = new Font("Courier", Font.BOLD, 40);
l.setFont(f);
pQuestion.add(l);
pQuestion.add(tf);
pQuestion.add(go);
pQuestion.add(Del);
donee.add(etatl);
go.addActionListener(this);
Del.addActionListener(this);
setBackground(Color.white);
add(pQuestion);
add(pdta);
add(donee);
etatl.setForeground(Color.red);
}
public void actionPerformed(ActionEvent e)
{
String b =((String)e.getActionCommand());
int nclient=Integer.parseInt(tf.getText());
ClientDB cl=GestCli.rechnum(nclient);
remove(pdta);
if(cl!=null)
{ pdta=new
PanneauData(t1,cl);
etatl.setForeground(Color.red);
add(pdta);
add(donee);
etatl.setText("");
}
else etatl.setText("CLIENT NON TROUVE");
parent.show();
if (b.equals("Modifier"))
{
System.out.println("ok");
GestCli.miseAJour();
etatl.setText("CLIENT MODIFIE");
remove(pdta);
donee.add(etatl);
add(donee);
parent.show();
}
}
public void modifcli(ClientDB c)
{
PanneauData pd = new PanneauData();
int nclient=Integer.parseInt(tf.getText());
c.setNumcli(nclient);
c.setNom(tab[1]);
c.setPrenom(tab[2]);
c.setRue(tab[3]);
c.setNum(tab[4]);
c.setCP(tab[5]);
c.setLocalite(tab[6]);
c.setTel(tab[7]);
c.setFax(tab[8]);
c.setNumtva(tab[9]);
c.modifier();
}
}
-----------------------------------------------------------------------------------------------
Et mon PanneauData :
package magasin;
import java.awt.*;
import java.util.*;
import java.awt.event.*;
public class PanneauData extends Panel {
protected String[] label,ligne;
protected TextField[] tabFields;
String []tab=new String[10];
protected Label lrech[],etat,titre;
protected int l;
public PanneauData(){
}
public PanneauData(Affichable aff )
{
ligne = aff.getRens();
l=ligne.length;
tabFields = new TextField[l];
GridLayout gl = new GridLayout(1,l,2,2);
setLayout(gl);
for(int i = 0;i<l;i++){
tabFields[i]= new TextField(ligne[i]);
add(tabFields[i]);
}
}
public PanneauData(Affichable affl, Affichable afft ){
label=affl.getRens();
ligne = afft.getRens();
l=ligne.length;
tabFields = new TextField[l];
lrech=new Label[l];
GridLayout gl = new GridLayout(l,6,12,2);
setLayout(gl);
for(int i = 0;i<l;i++){
lrech[i]=new Label(label[i]);
lrech[i].setForeground(Color.pink);
lrech[i].setFont(new Font("Tahoma", Font.PLAIN+Font.BOLD, 15));
add(lrech[i]);
tabFields[i]= new TextField(ligne[i]);
add(tabFields[i]);
}
}
public String[] getValeurs (){
String[] ligne2 = new String[l];
for(int i=0;i<l;i++){
ligne2[i]=tabFields[i].getText();
}
return ligne2;
}
}
----------------------------------------------------------------------------------------------
Pouvez m'aider à voir plus clair, merci beaucoup !!!!!