Bouton????

Résolu
abdoo05 Messages postés 45 Date d'inscription samedi 9 avril 2005 Statut Membre Dernière intervention 22 décembre 2005 - 18 nov. 2005 à 11:12
abdoo05 Messages postés 45 Date d'inscription samedi 9 avril 2005 Statut Membre Dernière intervention 22 décembre 2005 - 21 nov. 2005 à 09:15
salut,

j'ai un bouton "créer" et un tableau de bouton, a chaque fois que je
clique sur le bouton "creer",un nouveau bouton est crée(
"bouton1","bouton2"...)

mais le probleme est que je veu ke lorsque je clique sur le "bouton1" il me retourne 1 cad l'indice ds le tableau...

svp un peu d'aide

et merci d'avance

8 réponses

cs_ducheseb Messages postés 344 Date d'inscription mardi 18 mai 2004 Statut Membre Dernière intervention 23 juin 2006 9
18 nov. 2005 à 15:25
Tu n'utilisais pas la classe MyButton, ca peut pas marcher.

Voilà un code qui marche:

package log;


import java.awt.*;


import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;


public class test extends JFrame {
MyButton [] bout = new MyButton [100];
public int j =0;
public int i= 30;


public test() {
try {
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}


private void jbInit() throws Exception {
this.getContentPane().setLayout(null);
setSize(400,300);
creer.setBounds(new Rectangle(32, 27, 79, 25));
creer.setText("creer");
creer.addActionListener(new test_creer_actionAdapter(this));
this.getContentPane().add(creer);
}


JButton creer = new JButton();
public void creer_actionPerformed(ActionEvent e) {
bout[j]=new MyButton ("bouton "+j, j);
bout[j].setBounds(new Rectangle(32, 25+i, 79, 25));
bout[j].addActionListener(new test_bout_actionAdapter(this));
this.getContentPane().add(bout[j]);
this.getContentPane().repaint();
j++;
i =i+30;
}


}



class test_creer_actionAdapter implements ActionListener {
private test adaptee;
test_creer_actionAdapter(test adaptee) {
this.adaptee = adaptee;
}


public void actionPerformed(ActionEvent e) {
adaptee.creer_actionPerformed(e);
}
}


class test_bout_actionAdapter implements ActionListener {
private test adaptee;
test_bout_actionAdapter(test adaptee) {
this.adaptee = adaptee;
}


public void actionPerformed(ActionEvent e) {
MyButton mb = (MyButton) e.getSource();
System.out.println(mb.getIndice());
}
}


class MyButton extends JButton{


int indice;


public MyButton( String text , int indice){
super(text);
this.indice = indice;
}


public int getIndice(){
return indice;
}
}
3
cs_ducheseb Messages postés 344 Date d'inscription mardi 18 mai 2004 Statut Membre Dernière intervention 23 juin 2006 9
18 nov. 2005 à 11:45
Tu peux te faire une sous classe de JButton que tu va appeler lors de la création des boutons de ton tableau. Tu stockes l'indice dans cette sous-classe. Exemple:

public class MyButton extends JButton{


int indice;


public MyButton(int indice){
super();
this.indice = indice;
}


public int getIndice(){
return indice;
}
}

//Il faut que tu redéfinisses tous les constructeurs de JButton dont tu as besoin.
0
g_fuck Messages postés 269 Date d'inscription lundi 29 novembre 2004 Statut Membre Dernière intervention 23 août 2011
18 nov. 2005 à 13:28
salut !!! J'ai un petit problem que vous avez surement deja resolut !!! J'ai un "JFrame"
dans lequel j'ai une serie de "JTextField" dont l'un a une "addActionListener" Et je voudrais que a chaque foi que je click sur" ENTER " qu'il y ai un autre groupe de JTextField qui se cree....dans le meme JFrame !!!
de l'aide PLEASE
J.BAHOLE
0
cs_ducheseb Messages postés 344 Date d'inscription mardi 18 mai 2004 Statut Membre Dernière intervention 23 juin 2006 9
18 nov. 2005 à 13:43
Tu n'as pas moyen de savoir le nombre de JTextField qu'au ta JFrame?

Si tu le sais, tu peux tous les créer et les mettre avec setVisible(false) ou true pour les afficher ou non.

Sinon tu peux te créer une LinkedList et tu ajoutes chaque JTextField créé dans ta liste. En parcourant la liste, tu pourras récupérer chaque JTextField et les utiliser...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
abdoo05 Messages postés 45 Date d'inscription samedi 9 avril 2005 Statut Membre Dernière intervention 22 décembre 2005
18 nov. 2005 à 14:16
salut

bon désolé masi j'ai pas compris ta solution



public class MyButton extends JButton{
int indice;



public MyButton(int indice){
super();
this.indice = indice;
}


public int getIndice(){

return indice;

}

}

j'ai essayé et ça n'a pas marché
0
cs_ducheseb Messages postés 344 Date d'inscription mardi 18 mai 2004 Statut Membre Dernière intervention 23 juin 2006 9
18 nov. 2005 à 14:39
Donne ton code, car moi j'ai réussi à l'utiliser.
0
abdoo05 Messages postés 45 Date d'inscription samedi 9 avril 2005 Statut Membre Dernière intervention 22 décembre 2005
18 nov. 2005 à 14:47
package log;



import java.awt.*;



import javax.swing.*;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;



public class test extends JFrame {

JButton [] bout = new JButton[100];

public int j=0;

public int i=30;



public test() {

try {

jbInit();

} catch (Exception exception) {

exception.printStackTrace();

}

}



private void jbInit() throws Exception {

this.getContentPane().setLayout(null);

setSize(400,300);

creer.setBounds(new Rectangle(32, 27, 79, 25));

creer.setText("creer");

creer.addActionListener(new test_creer_actionAdapter(this));

this.getContentPane().add(creer);

}



JButton creer = new JButton();

public void creer_actionPerformed(ActionEvent e) {

bout[j]=new JButton("bouton "+j);

bout[j].setBounds(new Rectangle(32, 25+i, 79, 25));

this.getContentPane().add(bout[j]);

j++;

i=i+30;

}





}





class test_creer_actionAdapter implements ActionListener {

private test adaptee;

test_creer_actionAdapter(test adaptee) {

this.adaptee = adaptee;

}



public void actionPerformed(ActionEvent e) {

adaptee.creer_actionPerformed(e);

}

}





class MyButton extends JButton{



int indice;



public MyButton(int indice){

super();

this.indice = indice;

}



public int getIndice(){

return indice;

}

}
0
abdoo05 Messages postés 45 Date d'inscription samedi 9 avril 2005 Statut Membre Dernière intervention 22 décembre 2005
21 nov. 2005 à 09:15
merci pour votre aide:)
0
Rejoignez-nous