Salve ragazzi, vi scrivo per porvi un problema che non riesco a risolvere che è di fondamentale importanza. Il problema riguarda la creazione e l'avio di un JDialog modale. Vi posto l'intero codice in cui accade l'errore:
ah dimenticavo... l'errore è un blocco del sistema in genrale tale da costringermi a riavviare il pccodice:public void partita(final Uman umano, final IA computer,final JFrame frame){ JFrame frameComandi = new JFrame("Comandi"); JDialog comandi = new JDialog(frameComandi, Dialog.ModalityType.DOCUMENT_MODAL); JButton btnRilancia = new JButton("Rilancia"); btnRilancia.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { Campionato.durataPartita++; umano.Rilancia(frame, (SquadraUmano) umano.getSquadra(), umano.getGiocatori()); } }); btnRilancia.setName("Rilancia"); JButton btnTira = new JButton("Tira"); btnTira.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { Campionato.durataPartita++; umano.Contrasta(frame, umano.getGiocatori(), computer.getGiocatori(), (SquadraUmano)umano.getSquadra(), (SquadraAvversaria)computer.getSquadra()); if(((FinestraPartita) frame).getGiocatoreCorrente().getSquadra().equalsIgnoreCase(umano.getSquadra().GetNomeSquadra())) umano.Tira(frame, computer.getGiocatori(), (SquadraAvversaria)computer.getSquadra(), (SquadraUmano)umano.getSquadra()); } }); btnTira.setName("Tira"); JButton btnPassaggio = new JButton("Passaggio"); btnPassaggio.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { Campionato.durataPartita++; umano.Contrasta(frame, umano.getGiocatori(), computer.getGiocatori(), (SquadraUmano)umano.getSquadra(), (SquadraAvversaria)computer.getSquadra()); if(((FinestraPartita) frame).getGiocatoreCorrente().getSquadra().equalsIgnoreCase(umano.getSquadra().GetNomeSquadra())) umano.Passa(frame, (SquadraAvversaria)computer.getSquadra(), umano.getGiocatori(), computer.getGiocatori()); } }); btnPassaggio.setName("Passaggio"); comandi.add(btnPassaggio); comandi.add(btnTira); comandi.add(btnRilancia); if((int)(Math.random()*10)>5){ ((FinestraPartita) frame).setGiocatoreCorrente((Portiere) Search(12,168,umano.getGiocatori())); ((FinestraPartita) frame).getGiocatoreCorrente().setEnabled(true); } else{ ((FinestraPartita) frame).setGiocatoreCorrente((Portiere) Search(638,168,computer.getGiocatori())); ((FinestraPartita) frame).getGiocatoreCorrente().setEnabled(true); } // continuare. . . . . while(durataPartita < 5){ if (((FinestraPartita) frame).getGiocatoreCorrente().getSquadra().equalsIgnoreCase(squadra.GetNomeSquadra())) { // Chiedi all'utente frameComandi.setVisible(true); } else{ //computer TurnoComputer(frame, computer, umano); durataPartita++; } }
spero in un vostro aiuto..buona giornata![]()


Rispondi quotando
