发布网友 发布时间:2024-12-21 11:34
共1个回答
热心网友 时间:1分钟前
先看看getKeyLocation的API: public int getKeyLocation () 返回产生此按键事件的键位置。 某些键在键盘上出现多次,如左右 shift 键。另外,某些键则出现在数字键盘上。此方法提供了一种区分这些键的方式。 返回: 被按下或释放的键的位置。 总是为 KEY_TYPED 事件返回 KEY_LOCATION_UNKNOWN。 从你的代码看来,似乎你要用的是 getKeyChar ()方法。修改如下: addKeyListener(new KeyAdapter(){ public void keyTyped(KeyEvent e){ s=new Character((char)(Math.random()*26+'a')).toString(); String ss=String.valueOf(e.getKeyChar());//此处用getKeyChar()方法 if(ss.equalsIgnoreCase(label1.getText())) label1.setText(s); else if(ss.equalsIgnoreCase(label2.getText())) label2.setText(s); } }); 祝你成功。