lqyhmb 2016-07-24 03:35 采纳率: 33.3%
浏览 2796
已采纳

Java Swing 键盘监听事件

java swing 键盘监听按下P键后只让C键生效,其他键无效

  • 写回答

1条回答 默认 最新

  • 叶旅魂途 2016-07-24 05:03
    关注

    public class main extends JFrame implements KeyListener {
    public main() {
    getContentPane().setLayout(null);
    setVisible(true);
    this.addKeyListener(this);
    }

    public static void main(String[] args) {
        new main();
    }
    
    private boolean T = false;// 当这个变量为true时表示p被按下
    
    @Override
    public void keyTyped(KeyEvent e) {
    }
    
    // 按下了某个键
    public void keyPressed(KeyEvent e) {
        // 当p键被按下时
        if (T) {
            if(e.getKeyCode()==KeyEvent.VK_C){
                System.out.println("你按下了C键");
            }
        } else {// 当P键未被按下时
            if (e.getKeyCode() == KeyEvent.VK_P) {
                System.out.println("P键被按下");
                T = true;
            }else{
                System.out.println("你按下了"+ e.getKeyChar()+"键");
            }
        }
    
    }
    // 松开了
    public void keyReleased(KeyEvent e) {
        if (e.getKeyCode() == KeyEvent.VK_P) {
            System.out.println("P键被松开");
            T = false;
        }
    }
    

    }

    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP