永发信息网

java键盘事件

答案:2  悬赏:40  手机版
解决时间 2021-02-23 18:46
  • 提问者网友:火车头
  • 2021-02-22 21:18
import java.awt.*;import java.awt.event.*;class MyPanel extends Panel{   String msg="Pressed Key:";   public MyPanel(){      MyKeyAdapter bAction=new MyKeyAdapter();      bAction.addKeyListener(bAction);    }   public void paint(Graphics g){     g.setFont(new Font("宋体",Font.BOLD,24));     g.drawString(msg,20,50);    }   private class MyKeyAdapter extends KeyAdapter{     public void keyPressed(KeyEvent kevent){       int keycode=kevent.getKeyCode();       msg="Pressed Key:"+keycode+"char:"+(char)keycode;      repaint();   }     public void keyReleased(KeyEvent kevent){       setBackground(Color.red);repaint();  }     public void keyTyped(KeyEvent kevent){       if(kevent.getKeyChar()='x')       System.out.exit(0);     }}}public class keytest1{     public static void main(String[] args){        Frame myframe=new Frame("键盘测试");        MyPanel mypanel=new MyPanel();        myframe.add(mypanel,BorderLayout.NORTH);        myframe.addWindowListener(new WindowDestroyer());        myframe.setSize(300,300);        myframe.show();   }  }                        // 麻烦高手改对.详细一点啊
最佳答案
  • 五星知识达人网友:我住北渡口
  • 2021-02-22 22:26
没大看懂你的意思,如果是需要监听键盘的输入、删除的话可以这样:
JTextField myjtf=new JTextField(30);
myjtf.getDocument().addDocumentListener(new javax.swing.event.DocumentListener(){
public void changedUpdate(DocumentEvent e) {//这是更改操作的处理
String aaa =myjtf.getText().trim();//trim()方法用于去掉你可能误输入的空格号
System.out.println("1->"+aaa);
}
public void insertUpdate(DocumentEvent e) {//这是插入操作的处理
String aaa = myjtf.getText().trim();
System.out.println("2->"+aaa);
}
public void removeUpdate(DocumentEvent e) {//这是删除操作的处理
String aaa = myjtf.getText().trim();
System.out.println("3->"+aaa);
}
}
);
全部回答
  • 1楼网友:老鼠爱大米
  • 2021-02-22 22:47
//改了很多,方法有点不同 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class mainpanel extends jframe { imageicon image; int x = 100, y = 0; int movey = 10; jlabel jp; public mainpanel() { setpreferredsize(new dimension(300, 300)); setsize(300,300); image = new imageicon("src/abc.gif"); jp=new jlabel(image); getcontentpane().add(jp); jp.setbounds(50, 50, 90, 90); addkeylistener(new k()); setvisible(true); } private class k implements keylistener { public void keypressed(keyevent event) { if(event.getkeycode()==keyevent.vk_up) { x = 1; jp.setbounds(100, 100, 90, 90); } else if(event.getkeycode()==keyevent.vk_down) { x = -1; jp.setbounds(0, 0, 90, 90); } } public void keytyped(keyevent event) { } public void keyreleased(keyevent event) { } } public static void main(string[] args) { mainpanel m=new mainpanel(); m.pack(); } }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯