JtextFields + gros pb

ObiWanKennedy Messages postés 60 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 29 octobre 2010 - 7 mai 2005 à 21:48
ObiWanKennedy Messages postés 60 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 29 octobre 2010 - 9 mai 2005 à 15:52
Salut
voila on a un code qui marche une foi et pas deux

en gros
dans un actionPerformed

on dans un if l'initialisation d'une fenetre avec un jtextfield kan l'user rentre les donné la premiere foi sa passe et le prog passe a une autre partie du actionPerformed parcontre

ensuite si l'utilisateur souhaite refaire la meme chose
et ben impossible de recupe la valeur du Jtextfields il nous renvois une chaine vide
voici un bou de code sa sera plus clair

//si le nom de laction lancer est reponse eleve on crée une fenetre ki en gros sert a demander le nom du fichier du l'eleve dans le kel il y a les reponses.
else if(nom.equals("Réponses d'un élève"))
{

getContentPane().removeAll();
setJMenuBar (mbar);

JPanel moi = new JPanel(new GridBagLayout());
GridBagConstraints c = new GridBagConstraints();

JLabel nomfi = new JLabel("nom du fichier");

c.weightx = 1.100;
c.gridx = 1;
c.gridy = 0;
nomfi.setVisible(true);

moi.add(nomfi,c);

nomfile = new JTextField(15);
c.gridx = 2;
c.gridy = 0;
nomfile.setVisible(true);
nomfile.setEditable(true);
moi.add(nomfile,c);

JButton val = new JButton("Valider");
val.addActionListener (this);
val.setActionCommand("valvisrep");
c.ipady = 0;
c.weighty = 1.0;
c.anchor = GridBagConstraints.PAGE_END;
c.insets = new Insets(10,0,0,0);
c.gridx = 1;
c.gridwidth = 2;
c.gridy = 2;
moi.add(val,c);
moi.setVisible(true);
setVisible(true);
Jvisrep.getContentPane().add(moi);
Jvisrep.setVisible(true);
getContentPane().add(Jvisrep);

} //Fin action Réponses d'un élève

//ici si l'action est valvisrep donc lancé depuis la fenetre d'avant on crée une Jtable avec
//les donnée du fichier et on peu rentré les score des questions.
else if( nom.equals("valvisrep"))
{

JInternalFrame JVisrep2 = new JInternalFrame("Tableau des réponses");
prem.EraseCquizz();
prem.Initquizz("Exercice.qcm");
getContentPane().removeAll();
setJMenuBar (mbar);
JPanel moi = new JPanel();//new GridBagLayout()
JVisrep2.remove(moi);
GridBagConstraints c = new GridBagConstraints();

nomfich=nomfile.getText(); //ici cela renvoi une chaine vide kan la 2eme foi kon passe par
//Réponses d'un élève
resul = new Cresultat(nomfich); //donc le reste foire mais la premier foi kon le fé sa passe mais pour faire 2 fichier il fo lancé 2 foi l'application koi c lourds
res = resul.getvector();

Vector a = new Vector();
a.add((Object)"La question");
a.add((Object)"La réponse");
a.add((Object)"Les points à attribuer");
varchar='a';
models =new DataFileTableModel(a);

JTable table = new JTable();
table.setModel(models);
table.createDefaultColumnsFromModel();


TableColumn lespoints = table.getColumnModel().getColumn(2);
JTextField pointattribuer = new JTextField(10);
pointattribuer.setEditable(true);
pointattribuer.setVisible(true);
lespoints.setCellEditor(new DefaultCellEditor(pointattribuer));

table.setVisible(true);


JScrollPane scrollpane=new JScrollPane(table);
scrollpane.setPreferredSize(new Dimension(450,200));
moi.add(scrollpane);

JButton val = new JButton("Valider");
val.addActionListener (this);
val.setActionCommand("valvisrep2");
c.ipady = 0;
c.weighty = 1.0;
c.anchor = GridBagConstraints.PAGE_END;
c.insets = new Insets(10,0,0,0);
c.gridx = 1;
c.gridwidth = 2;
c.gridy = 2;
moi.add(val,c);
moi.setVisible(true);
setVisible(true);
JVisrep2.getContentPane().add(moi);
JVisrep2.setVisible(true);
getContentPane().add(JVisrep2);
nomfile.setText("");

} //Fin action valvisrep

le JtextFields est déclaré tt a la fin de mon prog

private JTextField
juste avant l'accolade de fin de prog.

la String nomfich parcontre est reinit apres

Merci

I am a heap of shit to human appearance

2 réponses

safisoft Messages postés 489 Date d'inscription vendredi 30 janvier 2004 Statut Membre Dernière intervention 13 mai 2009 6
9 mai 2005 à 08:48
mais pkoi tu vide ton container et tu le refais, ca serait mieu d'avoir une classe pour ton nouveau container!
0
ObiWanKennedy Messages postés 60 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 29 octobre 2010 1
9 mai 2005 à 15:52
parce que je vire des internal frame.

mais bon on a trouvé le problème et c'est reglé maintenant quoi.
on a utilisé des TextFields au lieu de JtextField et c reglé koi .

enfin bon je mettrais le code de ce projets dispo donc voila.

I am a heap of shit to human appearance
0
Rejoignez-nous