当前位置:首页 > 问答百科 > 正文内容

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)

福瑞号2023-05-17 22:40:55问答百科138

GridBagLayout是一种灵活的布局管理器,可以将组件按照网格坐标进行排列,并且可以控制每个组件的大小和对齐方式。添加一个控件panel时,可以使用GridBagConstraints来设置panel所在的网格坐标和大小,然后将panel添加进布局管理器中。同时,可以将左边两个按钮设置为BorderLayout.WEST,将右边的panel和按钮5设置为BorderLayout.EAST,以实现整体布局的要求。



Java学习:Java中的GUI

GUI就是图形用户界面

在诺基亚手机的时代

手机中有自带的小游戏

打开之后会有一个咖啡一样的标志

那个就是用GUI做的

感觉暴露年龄了o(╥﹏╥)o

现在让我们来看一下吧~

GUI

窗口的创建

创建一个窗口并显示出来用Frame

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)-图1

布局管理器

FlowLayout(流式布局管理器)

从左到右的顺序排列。

Panel(面板)默认的布局管理器。

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)-图2

BorderLayout(边界布局管理器)

东,南,西,北,中

Frame默认的布局管理器。

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)-图3

GridLayout(网格布局管理器)

规则的矩阵

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)-图4

CardLayout(卡片布局管理器)

选项卡

打开我们的eclipse多开几个页面,这就是卡片布局了

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)-图5

GridBagLayout(网格包布局管理器)

非规则的矩阵

就像图片上的按键的布局,就是非规则矩阵布局

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)-图6

暂时就是这么多了,剩下的知识点,以后我们做练习的时候顺便提一下,下面就是重头戏了

事件监听

学习GUI需要知道的两点

1)事件处理

事件:

用户的一个操作(点击鼠标,敲击键盘等操作)

事件源:

被操作的组件(按钮等)

2)监听器:

一个自定义类的对象,实现了监听器接口,包含事件处理方法,把监听器添加在事件源上,当事件发生的时候虚拟机就会自动调用监听器中的事件处理方法

窗体监听

事件源是窗体,把监听器注册到事件源上,把事件对象传递给监听器

WindowListener

用于接收窗口事件的侦听器接口。

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)-图7

我们要知道实现一个接口,就要实现它里面的所有的方法,效果就是这样的

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)-图8

其实我们只是需要一个closing方法就可以了,那么这里就用到了一个适配器的原理,有一个抽象类windowAdapter

如果要实现WindowListener接口,则必须定义该接口内的所有方法。此抽象类将所有方法都定义为null,所以只需针对关心的事件定义方法。

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)-图9

利用适配器类,我们的代码可以优化成这个样子

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)-图10

还可以继续优化,利用匿名内部类~

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)-图11

这样实现了

点击上面的x就可以关闭窗口的操作了

鼠标监听

MouseListener

用于接收组件上的鼠标事件(按下、释放、单击、进入或离开)的侦听器接口。(要跟踪鼠标移动和鼠标拖动,请使用MouseMotionListener)

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)-图12

MouseAdapter

接收鼠标事件的抽象适配器类。此类中的方法为空。此类存在的目的是方便创建侦听器对象。

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)-图13

同上,我们直接利用匿名内部类的方式来写代码

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)-图14

键盘监听和键盘事件

KeyListener

用于接收键盘事件(击键)的侦听器接口。旨在处理键盘事件的类要么实现此接口(及其包含的所有方法),要么扩展抽象KeyAdapter类(仅重写有用的方法)

KeyAdapter

接收键盘事件的抽象适配器类。此类中的方法为空。此类存在的目的是方便创建侦听器对象。

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)-图15

KeyEvent

表示组件中发生键击的事件。

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)-图16

动作监听

addActionListener

用于接收操作事件的侦听器接口。

对处理操作事件感兴趣的类可以实现此接口,而使用该类创建的对象可使用组件的addActionListener方法向该组件注册。在发生操作事件时,调用该对象的actionPerformed方法。(这个没有适配器)

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)-图17

默认监听键盘空格键以及鼠标左键

GUI的重点内容就是事件的监听

小伙伴们吸收一下

剩下的内容

会在之后的练习中给大家演示的

gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)-图18

我是萌新娜娜

立志做一个不翻车的老司机

学习Java的路上请多多指教

大家如果想要更深入了解java相关知识,私信我回复:【Java】即可知道你们想要知道的java相关问题

扫描二维码推送至手机访问。

版权声明:本文由福瑞号发布,如需转载请注明出处。

本文链接:http://furui.com.cn/176295.html

“gridbagconstraints布局(java GridBagLayout布局,下面的代码怎么修改让一个按钮占两行一列,)” 的相关文章

宋代定窑位于哪个省(汪有良著名鉴定专家论)

宋代定窑位于哪个省(汪有良著名鉴定专家论)

汪有良 中国管理科学研究院学术委员会 特约研究员 从出土古代生活土中残片论述陶瓷历史 今天我要论述的是从衢州一工地出现古代残土中的瓷片说起,为什么要从一片残缺的北宋瓷片论述呢?因为该瓷片可以把中国陶瓷文化的艺术工艺推行到一个最高境界。该瓷片能有什么可以把陶瓷历史推向一个最高度,这里我就从该瓷片...

诗佛是谁哪位诗人(古有诗仙、诗圣、诗佛、诗豪、诗鬼、诗狂、诗囚、诗奴)

诗佛是谁哪位诗人(古有诗仙、诗圣、诗佛、诗豪、诗鬼、诗狂、诗囚、诗奴)

给诗人起雅号,是唐代诗坛的一个有趣现象,说明了唐诗的繁华多彩,繁星闪烁。除了老幼皆知、后世仰望的“诗仙”李白、“诗圣”杜甫,还有诗佛、诗豪、诗鬼、诗狂、诗囚、诗奴,那么他们都是谁? “诗佛”王维 诗中有画,画中有诗,这说的就是唐代大诗人王维。与此同时,王维一生奉佛,其字摩诘,即取自《维摩诘经》。...

穿越大唐双龙的小说(他穿越到大唐双龙传里)

穿越大唐双龙的小说(他穿越到大唐双龙传里)

各位老铁,你们好!欢迎来到我的本站,老马讲那好玩的事儿。感谢各位在百忙之中点开这篇文章,小编感到十分荣幸。小编每天都会推荐精彩的小说,喜欢的小伙伴赶快动动小指头点赞关注吧!今天小编给大家推荐几本精彩的穿梭文,他穿越到大唐双龙传里,败尽大宗师,留下破碎虚空传说! 一、《穿梭之万千位面》——不知道人S...

如何练口语(英语口语怎么练最有效)

如何练口语(英语口语怎么练最有效)

可能有点难。学英语不是一蹴而就的,需要长期累积。说英语口语难吗,也不是特别难。如果你想要完成你口语英语native speaker这个标准仍然需要更深入的学习培训。大多数人的口语英语可以说得很自然和流畅,这主要是因为教育环境的问题。终究,在中国,大家学英语主要是为了考试,非常少。 英语口语怎么练...

海贼王赤犬怎么死的(海贼王:赤犬的七种死法)

海贼王赤犬怎么死的(海贼王:赤犬的七种死法)

在桃之助出现前,赤犬都是《海贼王》第一厌恶之人。在顶上战争,他杀了艾斯,还有追杀路飞。像赤犬这样的人,在海迷心中他早该死了,也有很多人在讨论,赤犬会以书面方式死去。下面公布赤犬的七种死法,路飞一人就贡献了三种,萨博将赤犬处刑时,真是大快人心,看着解气。 杀路飞被艾斯反杀 第一种,杀路飞被艾斯反...

小说月上重火结局(《月上重火》主角大结局:林奉紫选择孤独)

小说月上重火结局(《月上重火》主角大结局:林奉紫选择孤独)

宇哥带你读原著,一起来看罗云熙,陈钰琪主演热播剧《月上重楼》。 看原著,更深入。 剧照 《月上重火》这个剧名很有意思。 “月上”和“重火”既是江湖上两大势力,同时也代表了男女主的真性情。 月上谷谷主上官透和重火宫宫主重雪芝一个温润如玉,一个骄阳似火。 他们都是天资过人,少年成名,堪称江湖上第一...