Ma..... io non ho capito perchè non mi funziona ecco il codice:
in pratica quando clicco un tasto non accade nulla, e come se l'ascoltatore non ricevesse nulla, non so perchè mi ha sempre funzionato, Gioco gio è un JPanel comunque.... qualcuno sa come aiutarmi?codice:import javax.swing.JFrame; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import java.awt.event.KeyListener; import java.awt.event.KeyEvent; import java.awt.Button; import java.awt.FlowLayout; import java.awt.Dimension; public class Main extends JFrame implements ActionListener, KeyListener{ private static final long serialVersionUID = 1L; Button inizia, seleziona, esci; Gioco gio = new Gioco(); public Main(){ gio.setPreferredSize(new Dimension(500, 500)); gio.setVisible(false); add(gio); add(inizia = button("Inizia")); add(seleziona = button("Seleziona")); add(esci = button("Esci")); addKeyListener(this); } @Override public void keyPressed(KeyEvent ke) { System.out.println("hai cliccato un tasto"); } @Override public void keyReleased(KeyEvent arg0) { // TODO Auto-generated method stub } @Override public void keyTyped(KeyEvent arg0) { // TODO Auto-generated method stub } @Override public void actionPerformed(ActionEvent ae){ String azione = ae.getActionCommand(); if (azione.equals("Inizia")) gio.setVisible(true); else if(azione.equals("Esci")) System.exit(WIDTH); } public static void main (String args[]){ Main frame = new Main(); frame.setTitle("Prova"); frame.setSize(500, 500); frame.setLayout(new FlowLayout()); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } public Button button(String testo){ Button b = new Button(testo); b.addActionListener(this); return b; } }

Rispondi quotando