我需要对我的Java代码一些帮助我在Java中的新手,有一次我按了一封信我想显示一些信息,只是为了验证代码工作我想要做的是。使用javax swing库特别是keylistener和关键事件,我不知道我是否正确地做。 这里是我的代码:的Java的KeyListener
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.awt.event.KeyListener;
import java.awt.event.KeyEvent;
public class KeyStrokeButton{
public JFrame frame;
public JPanel panel;
public JButton btnfocus, btnrelease, btnwindow, btnancestor;
public JTextField text;
public static void main(String[] args)
{
SwingUtilities.invokeLater(new Runnable(){
public void run()
{
KeyStrokeButton mydesign = new KeyStrokeButton();
mydesign.design();
}
});
}
public void design()
{
panel = new JPanel();
panel.setLayout(null);
frame = new JFrame("Keystroke Tutorials");
frame.getContentPane().add(panel);
frame.setSize(250, 250);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
btnfocus = new JButton("<html><center>Focus");
btnfocus.setBounds(10, 10, 90, 80);
panel.add(btnfocus);
btnfocus.addKeyListener(new ClickPressed());
btnrelease = new JButton("Release");
btnrelease.setBounds(110, 10, 90, 80);
panel.add(btnrelease);
btnancestor = new JButton("Ancestor");
btnancestor.setBounds(10, 100, 90, 80);
panel.add(btnancestor);
btnwindow = new JButton("Window");
btnwindow.setBounds(110, 100, 90, 80);
panel.add(btnwindow);
}
class ClickPressed implements KeyListener
{
public void KeyPressed(KeyEvent e)
{
//any code.
}
}
}
尽可能我要分开我的代码的事件,所以我创建一个类,使其可读。
所以你得到的错误? (如果没有,那么你可能做对了) – 2012-08-14 00:38:28
这是什么问题? – 2012-08-14 00:39:01
我不认为你想使用按钮的KeyListener。您可能需要考虑通过addActionListener方法向您的按钮添加ActionListeners。 – km1 2012-08-14 01:42:16