【Java Swing】如何给Jframe添加键盘和鼠标事件处理

代码:

复制代码
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

public class ShowGui extends JFrame{
    // 构造函数
    public ShowGui() {
        // 添加键盘处理
        this.addKeyListener(new KeyAdapter() {
            public void keyTyped(KeyEvent e) {
                // 按键盘切换到随机目录,注意此处不能区分按键类型
                jumpToRandomFolder();
            }
        });
        
        // 添加鼠标处理
        this.addMouseListener(new MouseListener() {
            @Override
            public void mousePressed(MouseEvent e) {
                // do nothing
            }
            @Override
            public void mouseEntered(MouseEvent e) {
                // do nothing
            }
            @Override
            public void mouseClicked(MouseEvent e) {
                pauseRestartTimer();
            }

            @Override
            public void mouseReleased(MouseEvent e) {
                // do nothing
            }

            @Override
            public void mouseExited(MouseEvent e) {
                // do nothing
            }
        });
    }

}
复制代码

END

posted @   逆火狂飙  阅读(1024)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
历史上的今天:
2015-08-06 【Canvas与艺术】绘制印度国旗
2014-08-06 【高中数学/排列组合】编号为1,2,3,4,5,6的六个人分别去坐编号为1,2,3,4,5,6的六个座位,其中有且仅有两个人的编号与座位号一致的坐法有几种?
2014-08-06 【Canvas与标牌】内凹圆角矩形排列组合标牌
2014-08-06 【Canvas与旗帜】古巴人民共和国国旗
生当作人杰 死亦为鬼雄 至今思项羽 不肯过江东
点击右上角即可分享
微信分享提示