前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >GUI组件添加、布局设置

GUI组件添加、布局设置

作者头像
端碗吹水
发布2020-09-23 10:19:23
1.1K0
发布2020-09-23 10:19:23
举报

添加标签组件:

先构建一个窗口对象,使用setLayout();方法把布局设置为null,用setBounds();方法将窗口的位置坐标设置好,记得setVisibel();显示窗口方法尽量写在代码的最后面一句。

准备好窗口后,就可以使用JLabel来new出一个标签对象,像构建窗口一样使用setBounds把标签显示的位置坐标设置好,再使用窗口对象访问add();方法把标签组件添加到窗口上:

670ce758f05f779942ca0463488cbe89.png
670ce758f05f779942ca0463488cbe89.png

运行效果:

9b74ee774711db0dbdf53f5adc24f709.png
9b74ee774711db0dbdf53f5adc24f709.png

更改字体大小:

使用setFont();方法可以改变某个组件字体的大小,和形体:

a84f958141bb9d0cffa74072aeab68f5.png
a84f958141bb9d0cffa74072aeab68f5.png

运行效果:

0873c1dd96970c0ae2b72b5227871963.png
0873c1dd96970c0ae2b72b5227871963.png

注意:使用这个对象时,传递的数字越大,字体越大,数字越小,字体越小

窗口显示在最上面:

  setAlwaysOnTop();方法,写true就是令窗口显示

最上面,false则反之:

01a87df4ee74774ad4a0bbbd0b766e5a.png
01a87df4ee74774ad4a0bbbd0b766e5a.png

显示效果:

eb910090b87fab17ac1b1b6589624e70.png
eb910090b87fab17ac1b1b6589624e70.png

设置之后窗口就会一直在其他窗口的上面显示

去除窗口边框:

  setUndecorated();方法,写true就是除去窗口的边框,

false则反之:

5bcbfaa48b60cd935013649653e3d15e.png
5bcbfaa48b60cd935013649653e3d15e.png

运行效果:

d424fc43dd876ef3ee6ee1c2dd2d01d9.png
d424fc43dd876ef3ee6ee1c2dd2d01d9.png

显示出来就是没有边框的窗口

使窗口不能伸缩:

  setResizable();方法,写false就是令窗口不能伸缩,

将尺寸定死,true则反之:

7287a342ef046cac854125e5dc10b1f6.png
7287a342ef046cac854125e5dc10b1f6.png

运行效果:

834122a8d9ec944f9b2deee83e95b076.png
834122a8d9ec944f9b2deee83e95b076.png

窗口的状态:

setState();写1就令窗口运行时就缩在任务栏,写0则无改变:

3300780d522512eb77834218c98f3316.png
3300780d522512eb77834218c98f3316.png

运行结果:

b557d120f4db032394a99af85c882f95.png
b557d120f4db032394a99af85c882f95.png

设置窗口对象的默认关闭方式:

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

直接关闭虚拟机

setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);

隐藏关闭,对象不会销毁

setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

销毁对象关闭

窗口标题:

   setTitle();方法,可以设置窗口的标题:

3ac12be2771a55414f3e7bc5de23570d.png
3ac12be2771a55414f3e7bc5de23570d.png

运行效果:

49bb6c8915fa7c6447f5bdd6019d856f.png
49bb6c8915fa7c6447f5bdd6019d856f.png

添加按钮:

  使用JButton来new出一个按钮对象,像构建窗口一样使用setBounds把标签显示的位置坐标设置好,再使用窗口对象访问add();方法把按钮组件添加到窗口上:

244c3e9097a0eb2204e8e5453aa96ad1.png
244c3e9097a0eb2204e8e5453aa96ad1.png

运行效果:

d0381f798576362a99f328fe03dd2b8c.png
d0381f798576362a99f328fe03dd2b8c.png

添加文本框:

  使用JTextField来new出一个文本框对象,像构建窗口一样使用setBounds把标签显示的位置坐标设置好,再使用窗口对象访问add();方法把文本框组件添加到窗口上:

5ea3e5baa2be114ba2d50f86aa1e475c.png
5ea3e5baa2be114ba2d50f86aa1e475c.png

运行效果:

4b8b719416047297706ae0a0f9dc10bc.png
4b8b719416047297706ae0a0f9dc10bc.png

流式布局:

  FlowLayout是流式布局对象,构建出这个对象再使用setLayout();方法引用这个流式布局对象就可以实现流式布局了:

4d15c0683e8484920b480fa1900311b6.png
4d15c0683e8484920b480fa1900311b6.png

运行效果:

d87e0affcc282dbc128a5e4eed02842a.png
d87e0affcc282dbc128a5e4eed02842a.png
95c4d104d0f7bbf092a60b5191a1bc99.png
95c4d104d0f7bbf092a60b5191a1bc99.png

流式布局里的组件会随着窗口的拉动而改变

卡片布局:

  CardLayout是卡片布局对象,可以直接在setLayout();方法里new这个卡片布局对象,就可以实现流式布局了: 

cfddcfbf3730dab493124757ba5d543f.png
cfddcfbf3730dab493124757ba5d543f.png

运行效果:

449783c4777af61112512c0c1625b491.png
449783c4777af61112512c0c1625b491.png

卡片布局就是像卡片一样,一张张的卡片叠在一起,按下一步就会到下一个卡片界面

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-10-26 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档