当前位置: 代码网 > it编程>编程语言>Java > Java GUI事件处理及添加对话框实现方式

Java GUI事件处理及添加对话框实现方式

2026年02月04日 Java 我要评论
事件处理在窗口添加好面板和组件之后,但只是一个界面,不能执行其中的功能,需要添加事件处理来实现相应的功能。用户与gui组件进行交互就会发生事件,如:按下一个按钮、用键盘输入一个字符、点击鼠标等。jav

事件处理

在窗口添加好面板和组件之后,但只是一个界面,不能执行其中的功能,需要添加事件处理来实现相应的功能。用户与gui组件进行交互就会发生事件,如:按下一个按钮、用键盘输入一个字符、点击鼠标等。

java中,事件处理的基本思路:

  • 一个源(事件源)产生一个事件(事件对象)并把它送到监听器那里,监听器只是简单地等待,直到它收到一个事件,一旦事件被接受,监听器将处理这些事件;
  • 一个事件源必须注册监听器以便监听器可以接受关于一个特定事件的通知。

1.按钮点击事件

例如向按钮1添加点击事件:

jbutton1.addactionlistener(new actionlistener() {
            @override
            public void actionperformed(actionevent e) {
                system.out.println("点击登录");
            }
        });

2.鼠标事件

向按钮2添加鼠标事件:

jbutton2.addmouselistener(new mouselistener() {
            @override
            public void mouseclicked(mouseevent e) {
                system.out.println("鼠标点击");
            }

            @override
            public void mousepressed(mouseevent e) {
                system.out.println("鼠标按下,但没有松开");
            }

            @override
            public void mousereleased(mouseevent e) {
                system.out.println("鼠标松开");
            }

            @override
            public void mouseentered(mouseevent e) {
                system.out.println("鼠标悬停");
            }

            @override
            public void mouseexited(mouseevent e) {
                system.out.println("鼠标移走");
            }
        });

3.键盘事件

例如向文本域添加键盘事件

jtextfield.addkeylistener(new keylistener() {
            @override
            public void keytyped(keyevent e) {
//                system.out.println("键盘输入完成");
            }

            @override
            public void keypressed(keyevent e) {
//                system.out.println("键盘按下");
            }

            @override
            public void keyreleased(keyevent e) {
//                "释放键盘"
                system.out.println(jtextfield.gettext());
            }
        });

4.添加窗口事件

例如向当前窗口添加窗口事件:

this.addwindowlistener(new windowadapter() {//窗口适配器windowadapter,也可使用new windowlistener()
            @override
            public void windowclosing(windowevent e) {
                int res = joptionpane.showconfirmdialog(null,"确定退出聊天室?","操作提示",joptionpane.ok_cancel_option);//弹出一个对话框
                if (res == 0){//确认退出
                    dispose();
                }
            }
        });

对话框

joptionpane对话框

1.showmessagedialog():消息对话框

  • 五种消息类型,图标不同:
error_message 错误消息提示
information_message 信息提示
warning_message        警告提示
question_message  问题提示
plain_message        简洁提示
  • 例如:
joptionpane.showmessagedialog(null, "发送内容不能为空");
  • 图示:

 

2.showconfirmdialog():确认对话框

主要有四种消息类型图标不同:

default_option       默认选项
yes_no_option 是/否选项
yes_no_cancel_option是/否/取消选项
ok_cancel_option确定/取消
  • 例如:
joptionpane.showconfirmdialog(null,"确定退出聊天室?","操作提示",joptionpane.ok_cancel_option);
  • 图示: 

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2026  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com