注册监听器为什么失效? 在一个JPanel 上注册键盘监听器,可用。但如果在这个JPanel 上放一个 JButton 之类的就没用了,为什么? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 此回复为自动发出,仅用于显示而已,并无任何其他特殊作用楼主【tristan0429】截止到2008-07-13 09:33:10的历史汇总数据(不包括此帖):发帖的总数量:10 发帖的总分数:150 每贴平均分数:15 回帖的总数量:9 得分贴总数量:0 回帖的得分率:0% 结贴的总数量:9 结贴的总分数:130 无满意结贴数:1 无满意结贴分:10 未结的帖子数:1 未结的总分数:20 结贴的百分比:90.00 % 结分的百分比:86.67 % 无满意结贴率:11.11 % 无满意结分率:7.69 % 值得尊敬 示范代码如下,把注册里的按钮加上就不能触发监听事件,为什么?谢谢。另,这事件是注册给panel、还是frame ,我下面是两个都注册了,但不知道其中的区别。import java.awt.event.KeyAdapter;import java.awt.event.KeyEvent;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JPanel;public class Test{ public static void main(String[] args) { TestFrame frame = new TestFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); TestPanel panel = new TestPanel(); Controller ctr = new Controller(); frame.add(panel); panel.addKeyListener(ctr); frame.addKeyListener(ctr); frame.setVisible(true); }}class TestFrame extends JFrame{ public TestFrame() { setTitle("test"); setBounds(100, 100, 250, 250); }}class TestPanel extends JPanel{ public TestPanel() { setSize(200, 200); // JButton btn = new JButton("btn");// // this.add(btn); }}class Controller extends KeyAdapter{ @Override public void keyPressed(KeyEvent e) { switch(e.getKeyCode()) { case KeyEvent.VK_UP: System.out.println("up"); break; case KeyEvent.VK_DOWN: System.out.println("Down"); break; } } } 高分求助!各位大神! Properties类loadXML总出错,为什么?急求啊 请教一个关于Java“例外”的问题 图的表示和最短路径问题 一个线程题目 为什么不可以显示JTable的行标题? JAVA JTaggleButton组件 不支持加载 .bmp图片吗? 请教一个ResultSet问题 关于SSL在Java服务器中的配置,十万火急,救命 关于两个类的迷惑:StringReader 和 StringBufferInputStream java线程小问题,白送分 问个简单的问题。
楼主【tristan0429】截止到2008-07-13 09:33:10的历史汇总数据(不包括此帖):
发帖的总数量:10 发帖的总分数:150 每贴平均分数:15
回帖的总数量:9 得分贴总数量:0 回帖的得分率:0%
结贴的总数量:9 结贴的总分数:130
无满意结贴数:1 无满意结贴分:10
未结的帖子数:1 未结的总分数:20
结贴的百分比:90.00 % 结分的百分比:86.67 %
无满意结贴率:11.11 % 无满意结分率:7.69 %
值得尊敬
import java.awt.event.KeyEvent;import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;public class Test
{ public static void main(String[] args)
{
TestFrame frame = new TestFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
TestPanel panel = new TestPanel();
Controller ctr = new Controller();
frame.add(panel);
panel.addKeyListener(ctr);
frame.addKeyListener(ctr);
frame.setVisible(true);
}}class TestFrame extends JFrame
{
public TestFrame()
{
setTitle("test");
setBounds(100, 100, 250, 250);
}
}class TestPanel extends JPanel
{
public TestPanel()
{
setSize(200, 200);
// JButton btn = new JButton("btn");
//
// this.add(btn);
}
}class Controller extends KeyAdapter
{ @Override
public void keyPressed(KeyEvent e)
{
switch(e.getKeyCode())
{
case KeyEvent.VK_UP:
System.out.println("up");
break;
case KeyEvent.VK_DOWN:
System.out.println("Down");
break;
}
}
}