我们前面的经验介绍了Swing中最常用的3种布局方式:流式布局,边界布局和格布局。这3种方式适用于构建界面结构相对整齐的用户界面,如果遇到稍微复杂的界面结构呢?
GridBagLayout 是 JAVA提供的较高级的布局方式,顾名思义,其是一种格布局,但不同于普通的格布局,其支持跨行跨列来放置其中的控件!我们这篇经验就来看看如何使用这个较高级的格布局。
关于上述常用的那3种布局方式,大家可以查看如下经验。
5JAVA入门之如何使用Swing实现第一个窗口应用
步骤一 : 创建测试工程和测试类
我们将在方法 "initComponent"中对控件所有声明的控件初始化, 在方法"initUI" 中构建整个界面。
步骤二 : 声明并初始化所有控件
我们在测试程序中,只使用7个按钮构建一个跨行跨列的用户界面
步骤三 : 使用GridBagLayout (1)
设置画布的布局方式为GridBagLayout, 并按照界面控件的显示顺序,将所有控件全部放置到画布上。
注意 : 这里涉及了3个JPanel,这3个控件没有显示在界面上,只是起到换行的作用,后面大家可以看到如何对这3个 JPanel 进行设置!
步骤四 : 使用GridBagLayout (2)
看看GridBagConstraints 的使用,我们通过这个类来设置具体控件的布局位置,大小,跨行跨列,水平拉伸,垂直拉伸等样式!
我们创建GridBagConstraints 对象,其有很多属性,我们针对控件的具体情况,只需改变这些属性的值即可。
步骤五 :使用GridBagLayout (3)
逐行对每个控件进行操作,针对具体控件,根据其设计图中的位置,大小,跨行,拉伸等情况,修改GridBagConstraints 对象的相关属性,并将这个修改后的GridBagConstraints 对象设置到具体控件上!
注意 : 呼应一下步骤三,大家注意一下换行处的代码!
步骤六 : 总结
我们通过几个按钮构建了一个界面,讲解了GridBagLayout 的使用,这个布局方式很强悍,大家在构建复杂界面时,别忘记考虑这种方式!
代码已上传到截图显示的百度云盘中,有兴趣可以去下载!
标签:JAVA,Swing,GridBagLayout