您现在的位置是:网站首页 > 代码编程 > JAVA开发JAVA开发

【原】JFrame、jDialog、JWindow三者的区别

不忘初心 不忘初心 2017-12-14 围观() 评论() 点赞() JAVA开发

简介:在使用swing开发的时候,用到最多的窗体组件就是JFrame了,但是官方还提供了其他的组件JDialog和JWindow,今天就来带领大家看一下这三者有什么区别,分别在什么场景下适用。一、JFrame在窗体的右上角,会有最小化、最大化、关闭这三个按钮而且,在任务栏有一个图标(注意:是任务栏,不是系统托盘)最后一个图标就是swing的标记,java官方标志性的图标,这个也是可以自己更改的,自定义一

在使用swing开发的时候,用到最多的窗体组件就是JFrame了,但是官方还提供了其他的组件JDialog和JWindow,今天就来带领大家看一下这三者有什么区别,分别在什么场景下适用。

一、JFrame

在窗体的右上角,会有最小化、最大化、关闭这三个按钮

JavaSwing中JFrame、jDialog、JWindow三者的区别

而且,在任务栏有一个图标(注意:是任务栏,不是系统托盘)

JavaSwing中JFrame、jDialog、JWindow三者的区别

最后一个图标就是swing的标记,java官方标志性的图标,这个也是可以自己更改的,自定义一个icon即可。

二、JDialog

这是一个弹框的窗体组件,多用于信息的提示,它是没有最大化和最小化的,只有一个关闭按钮

JavaSwing中JFrame、jDialog、JWindow三者的区别

而且,在任务栏并没有图标,还可以设置是否模态窗口

JavaSwing中JFrame、jDialog、JWindow三者的区别

如果我们模仿QQ,那么主窗体就要用这个而不是JFrame了,因为QQ的主窗体是没有在任务栏上存在的,它只有一个系统托盘图标

三、JWindow

这个组件跟JFrame非常相近,甚至可以理解为就是JFrame,只不过去掉了装饰

JavaSwing中JFrame、jDialog、JWindow三者的区别

大家发现了什么,没错,就是在用JFrame的时候,加了一句 setUndecorated(true),就可以有这个效果,可以用来作为一些宣传页面(比如:软件第一次打开的时候,会有一个欢迎和介绍的界面,就可以用这个来实现)。

它也是没有任务栏图标的:

JavaSwing中JFrame、jDialog、JWindow三者的区别

这个组件还有一个不一样的地方,在代码层面,JFrame和JDialog因为有关闭按钮,所以要为它设置一个关闭方式,而JWindow却没有,所以就无需设置

JavaSwing中JFrame、jDialog、JWindow三者的区别

好了,在实际使用中,我个人总结的就是这一些不同了,以后有新的发现了,再来跟大家分享!

swingjframejdialogjwindow

看完文章,有任何疑问,请加入群聊一起交流!!!

很赞哦! ()

文章评论

  • 请先说点什么
    人参与,条评论

请使用电脑浏览器访问本页面,使用手机浏览器访问本页面会导致下载文件异常!!!

雨落无影

关注上方公众号,回复关键字【下载】获取下载码

用完即删,每次下载需重新获取下载码

若出现下载不了的情况,请及时联系站长进行解决

站点信息

  • 网站程序:spring + freemarker
  • 主题模板:《今夕何夕》
  • 文章统计:篇文章
  • 标签管理标签云
  • 微信公众号:扫描二维码,关注我们