Ho ripristinato l'evento sul JButton, ma non funzionano molte cose...
1) mi fa il println() di rigo //1 ma non l'append()codice:bottone.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { try { tuaScelta = menu.getSelectedIndex(); avvers1 = 7 - tuaScelta; scrivi.append(SquadreNomi[tuaScelta] + "-" + SquadreNomi[avvers1] + "\n"); // 1 scrivi.setCaretPosition(scrivi.getDocument().getLength()); menu.setEnabled(false); quarto = new Match(Squadre.get(tuaScelta), Squadre.get(avvers1)); esito1 = giocaQuarto(scrivi); // 2 bottone.setEnabled(false); } catch (InterruptedException ie) { System.out.println(ie.getMessage()); } } });
2) implementa quarto, invoca giocaQuarto(), disabilita scrivi (la mia JTextArea) e bottone ma al click su esso si blocca la GUI, non funziona nemmeno il previsto
e devo procedere da prompt con Ctrl+C.codice:setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
tuaScelta e avvers1 sono delle variabili globali int; il try/catch è richiesto poiché c'è in giocaQuarto() c'è un Thread.sleep()...
Nella JTextArea appare il messaggio che la squadra corrispondente all'item 0 del Choice ha perso contro sè stessa, sebbene in SquadreNomi[], stampati su prompt, appaiano i nomi giusti. Non capisco perché non passano i parametri (Squadre è un ArrayList di oggetti Squadra, con gli stessi indici dell'array di String SquadreNomi[]).
L'intero programma funziona senza GUI.


Rispondi quotando