Oppure

Loading
29/07/10 13:03
Bonny
Salve rag, sto sviluppando il gioco del poker in java, per le carte e i bottoni che servono a selezionare le carte che si vuol tenere ho usato degli array:

private JLabel[] vl = new JLabel[4];
private JButton[] but = new JButton[4];
private JButton bet = new JButton("Bet";);// per fare la puntata

tutto questo è contenuto in un JFrame implementando l'interfaccia ActionListener, poi ne costruttore del Jframe ho fatto cosi:

for (int i = 0; i < vl.length; i++) {
pcard.add(vl[i] = new JLabel());
vl[i].setIcon(new ImageIcon(path+"sfondo.jpg";));
}
for (int i = 0; i < but.length; i++) {
pbut.add(but[i] = new JButton("Tieni " + (i + 1)));
but[i].setPreferredSize(new Dimension(175, 40));
but[i].addActionListener(this);
}//pcard e pbut sono dei JPanel

bet.addActionListener(this);

fin qui tutto ok!
poi nel metodo actionPerformed all'evento click su JButton Bet esegue ogni istruzione invece su i but[] no....
public void actionPerformed(ActionEvent e) {

String b = e.getActionCommand();

if (b.equals("Bet";)) {
//esegue le istruzioni
}else if(b.equals("Tieni 1";)){
//non esegue un tubo
}else if(b.equals("Tieni 2";)){
//non esegue un tubo
}else if(b.equals("Tieni 3";)){
//non esegue un tubo
}else if(b.equals("Tieni 4";)){
//non esegue un tubo
}
}
}
Non capisco quale sia il prob.
So che se creo i JButton singolarmente funziona ma volevo continuare in questo modo.
aaa
29/07/10 13:19
tasx
per i metodi "setActionListener" e "setPreferredSize" vanno eseguiti sui Button non sull'array di Button,
al posto di scrivere
but.seActionListener(this);


prova con

but[i].setActionListener(this);


ciaociao

ps: ovviamente devi modificare anche preferredsize :k::k:
aaa
29/07/10 13:21
tasx
un altra cosa, mi chiedo, come la jvm e javac possano accetare un codice del genere, sicuro di averlo compilato così??
aaa
29/07/10 13:44
Bonny
Si e ora funziona come per magia senza avere modificato nulla!!
grazie tasx per la tua disponibilità!
aaa
29/07/10 19:13
tasx
uhm....
mumble mumble moooooooolto strano... :yup::yup::yup::yup:
aaa