Je voudrais créer la fenêtre simple où un bouton sera. Lorsque je vais appuyer sur lui est censé être imprimé "test" et quand je vais appuyer sur F5 "F5". Je ne sais pas ce que je fais mal je présente mes excuses pour mon anglais, j'étudie encoreJe ne peux pas utiliser ActionListener et KeyListener en même temps
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JButton;
import javax.swing.JFrame;
@SuppressWarnings("serial")
public class Okienko extends JFrame implements ActionListener , KeyListener
{
static Okienko frame;
JButton bTest;
public Okienko()
{
setLayout(null);
frame = this;
frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
frame.setTitle("test");
frame.setLocation(150, 150);
frame.setSize(200, 400);
bTest = new JButton("Test");
bTest.setBounds(20, 50, 120, 20);
frame.add(bTest);
bTest.addActionListener(this);
frame.addKeyListener(this);
//frame.setFocusable(false);
//frame.requestFocus();
requestFocusInWindow();
frame.setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e)
{
Object source = e.getSource();
if (source == bTest)
{
System.out.println("Test");
}
}
@Override
public void keyPressed(KeyEvent e)
{
int id = e.getKeyCode();
if (id == KeyEvent.VK_ESCAPE)
{
this.dispose();
}
if (id == KeyEvent.VK_F5)
{
System.out.println("F5");
}
}
@Override
public void keyReleased(KeyEvent e)
{
}
@Override
public void keyTyped(KeyEvent e)
{
}
public static void main(String[] args)
{
new Okienko();
}
}