Recuperer les elements d'unJTexfield

cs_mael974 Messages postés 108 Date d'inscription jeudi 2 juin 2005 Statut Membre Dernière intervention 10 mars 2011 - 8 janv. 2006 à 01:46
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 - 8 janv. 2006 à 02:36
Bonjour a tous
voila mon pbl, je dois effectuer un pgrme qui me calcule un simplexe! Pour ce faire je propose a l'utilisateur de saisir le nbr de colonne et ligne de la matrice. ensuite mon prgm va creer autant de JTextField pr cree une matrice. l'utilisateur saisie les valeurs ds les JTextFied et valide !!! Lors de la validation je recupere n fois le derniere element du JTextField !!!! Le pbl est le suivant c'est que jarrive pas a parcourir chaque JTextfiel et recuperer la valeur associé (car tous les JTextFiel porte le mm nom de variable)!!!j'ai essayer de faire un tableau de JTexfiel ms en vaiinn !! hellpp mee !!! voici mon code de depart si vs avez

public class FenetreMatrice extends JFrame implements ActionListener{

protected JButton valider;
protected JButton Annuler;
protected JTextField t,t1;
protected JPanel cont;
protected int lig, col;


public FenetreMatrice(int ligne,int colonne){

lig = ligne;
col = colonne;

setSize(600,400);
setVisible(true);
setTitle("saisie des elements pour l'algo de simplexe");

cont= new JPanel();
cont.setLayout(new GraphPaperLayout(new Dimension(20,20)));

//jai essayer de faire un tableau de JTextfiel
// JTextField mat[][] = new JTextField [10][20];

//i les lignes et j les colones
for(int i=1;i<=ligne;i++){
for(int j=1;j<=colonne;j++){

//creeation des JF pour chaques lignes et chaques colones
t =new JTextField();
//mat[i][j]= t=new JTextField();
cont.add(t,new Rectangle(j*2,i*2,2,2));
}
}

getContentPane().add(cont);

valider = new JButton("valider");
valider.addActionListener(this);
cont.add(valider,new Rectangle(5,16,6,2));

}

public void actionPerformed(ActionEvent e) {

Object source = e.getActionCommand();
if(source == "valider"){
for(int i=1;i<=lig;i++){
for(int j=1;j<=col;j++){
System.out.println(Double.parseDouble(t.getText()));

}
}
}
}
}

> MaEl <

3 réponses

cs_mael974 Messages postés 108 Date d'inscription jeudi 2 juin 2005 Statut Membre Dernière intervention 10 mars 2011
8 janv. 2006 à 02:20
voici le code qd jessaie de faire un tableau de JTextFiel !! cette fois je recupere + rien !!! :(

import java.awt.*;


import javax.swing.*;


import java.awt.event.*;


public class FenetreMatrice extends JFrame implements ActionListener{

protected JButton valider;
protected JButton Annuler;
protected JPanel cont;
protected int lig, col;


public FenetreMatrice(int ligne,int colonne){

lig = ligne;
col = colonne;

setSize(600,400);
setVisible(true);
setTitle("saisie des elements pour l'algo de simplexe");

cont= new JPanel();
cont.setLayout(new GraphPaperLayout(new Dimension(20,20)));

JTextField[][] mat = new JTextField[ligne][colonne];


//i cest les lignes et j les colones
for(int i=1;i<=ligne;i++){
for(int j=1;j<=colonne;j++){

mat[i][j]= new JTextField();
cont.add(mat[i][j],new Rectangle(j*2,i*2,2,2));




// System.out.println(mat);
}
}

getContentPane().add(cont);

valider = new JButton("valider");
valider.addActionListener(this);
cont.add(valider,new Rectangle(5,16,6,2));

}

public void actionPerformed(ActionEvent e) {

Object source = e.getActionCommand();
if(source == "valider"){
for(int i=1;i<=lig;i++){
for(int j=1;j<=col;j++){

System.out.println(Double.parseDouble(t.getText()));

}
}
}
}
}

> MaEl <
0
cs_mael974 Messages postés 108 Date d'inscription jeudi 2 juin 2005 Statut Membre Dernière intervention 10 mars 2011
8 janv. 2006 à 02:29
dsl me suis trompe de code (tener pas cpte du 2eme msg):

public class FenetreMatrice extends JFrame implements ActionListener{

protected JButton valider;
protected JButton Annuler;
protected JTextField t;
protected JPanel cont;
protected int lig, col;


public FenetreMatrice(int ligne,int colonne){

lig = ligne;
col = colonne;

setSize(600,400);
setVisible(true);
setTitle("saisie des elements pour l'algo de simplexe");

cont= new JPanel();
cont.setLayout(new GraphPaperLayout(new Dimension(20,20)));

JTextField mat[][] = new JTextField[ligne][colonne];


//i cest les lignes et j les colones
for(int i=1;i<=ligne;i++){
for(int j=1;j<=colonne;j++){
t=new JTextField();
mat[i][j] = t;
cont.add(t,new Rectangle(j*2,i*2,2,2));




// System.out.println(mat);
}
}

getContentPane().add(cont);

valider = new JButton("valider");
valider.addActionListener(this);
cont.add(valider,new Rectangle(5,16,6,2));

}

public void actionPerformed(ActionEvent e) {

Object source = e.getActionCommand();
if(source == "valider"){
for(int i=1;i<=lig;i++){
for(int j=1;j<=col;j++){

System.out.println(Double.parseDouble(t.getText()));

}
}
}
}
}

> MaEl <
0
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
8 janv. 2006 à 02:36
Salut,





tu peux toujours faire un truc comme :



import java.awt.BorderLayout;

import java.awt.Dimension;

import java.awt.GridLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;



import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.JTextField;



public class FenetreMatrice
extends JFrame implements ActionListener {



protected JButton valider;



protected JButton Annuler;



protected JPanel cont1;



protected JPanel cont2;



protected int lig, col;



JTextField mat[];



public static void main(String[] args) {

new Test(15, 15);

}



public FenetreMatrice
(int ligne, int colonne) {

super("saisie des elements pour l'algo de simplexe");

lig = ligne;

col = colonne;

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setSize(600, 400);

setLocationRelativeTo(null);





cont1 = new JPanel();

cont1.setLayout(new GridLayout(ligne, colonne));//+1 pour le bouton

mat = new JTextField[ligne * colonne];

for (int i = 0; i < mat.length; i++) {

mat[i] = new JTextField("" + (i+1));

mat[i].setPreferredSize(new Dimension(20, 20));

cont1.add(mat[i]);

}





cont2 = new JPanel();//pour ne pas saturer le bouton

valider = new JButton("valider");

valider.addActionListener(this);

cont2.add(valider);



add(cont1, BorderLayout.CENTER);

add(cont2, BorderLayout.SOUTH);

setVisible(true);

}



public void actionPerformed(ActionEvent e) {

if(e.getSource().equals(valider)){

for (int i = 0; i < mat.length; i++) {



System.out.println(Double.parseDouble(mat[i].getText()));

}

}

}

}

WORA
0
Rejoignez-nous