欢迎来到天天文库
浏览记录
ID:39623641
大小:70.50 KB
页数:3页
时间:2019-07-07
《网格布局管理器》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、使用网格布局管理器网格布局管理器可以将组件以网格的格式排列在容器中,容器被分成大小相等的矩形,每个矩形区域中可以放置一个组件,就像表格中的单元格一样整齐的排列。可以设置网格布局管理器的行数和列数创建不同大小的网格布局管理器。该管理器的布局结构如图1所示。图1 网格布局管理器的结构图1.创建网格布局管理器当使用容器的setLayout()方法设置容器使用网格布局管理器时,必须给这个方法传递一个网格布局管理器的实例对象,在创建网格布局管理器的实例对象时,可以根据不同的构造方法创建指定大小和组件间距的网格布局管理器。创建边界布局管理器的常用构造方法如下。 GridLa
2、yout()方法该构造方法用于创建默认的网格布局管理器,这个默认的管理器对象将组件排列在一行或者一列中。语法:newGridLayout() GridLayout(introws,intcols)方法该构造方法用于创建具有指定行数和列数的网格布局管理器。布局管理器将为所有组件分配相同大小的空间。语法:newGridLayout(rows,cols);rows:网格的行数,可以设置为0,这样做会使网格以列数限制网格的布局。cols:网格的列数,可以设置为0,这样做会使网格以行数限制网格的布局。 GridLayout(introws,intcols,inthga
3、p,intvgap)方法该构造方法用于创建具有指定行数、列数和组件间距的网格布局管理器。布局管理器将为所有组件分配相同大小的空间。语法:newGridLayout(rows,cols,hgap,vgap);rows:网格的行数,可以设置为0,这样做会使网格以列数限制网格的布局。cols:网格的列数,可以设置为0,这样做会使网格以行数限制网格的布局。hgap:组件之间的水平间距。vgap:组件之间的垂直间距。2.应用网格布局管理器应用网格布局管理器,首先必须设置该容器使用网格布局管理器,然后在调用容器的add()方法为容器添加组件,网格布局管理器会自动为每个组件设置相
4、同大小的空间。另外,在创建了网格布局管理器之后,还可以调用它的常用方法改变网格的行数和列数等属性。这些常用方法如表1所示。表1 GridLayout类提供的常用方法本实例使用网格布局管理器将容器内的所有组件排列在指定行数和列数的网格中,实现步骤如下。(1)创建GridLayoutDemo类,该类继承JFrame类实现窗体界面,在该类中创建一个按钮组件的数组,然后在构造方法中设置窗体容器使用3行3列的网格布局管理器,初始化该数据,并且将数组中的组件添加到窗体容器中。关键代码如下:StudySwingsrccomlzwGridLayoutDemo.java关键代
5、码:privateJButton[]buttons;publicGridLayoutDemo(){setTitle("边界布局管理器实例");setBounds(100,100,300,200);buttons=newJButton[9];Containerpanel=getContentPane();panel.setLayout(newGridLayout(0,3));for(inti=0;i<9;i++){buttons[i]=newJButton("按钮"+(i+1));panel.add(buttons[i]);}setDefaultCloseOperat
6、ion(WindowConstants.EXIT_ON_CLOSE);}(2)编写main()主方法,在主方法中创建GridLayoutDemo类的实例对象,即窗体对象,然后调用该对象的setVisible()方法显示窗体界面。关键代码如下:摘要: StudySwingsrccomlzwGridLayoutDemo.java关键代码:publicstaticvoidmain(String[]args){GridLayoutDemodemo=newGridLayoutDemo();demo.setVisible(true);}(3)运行本实例,将显示Study
7、SwingsrccomlzwGridLayoutDemo.java关键代码:publicstaticvoidmain(String[]args){GridLayoutDemodemo=newGridLayoutDemo();demo.setVisible(true);}(3)运行本实例,将显示窗体界面,窗体中包含了9个按钮组件,并且是以网格形式排列的。运行效果如图2所示。图2 应用网格布局管理器的布局效果完整代码:srccomlzwGridLayoutDemo.java完整代码packagecom.lzw;importjava.awt.Contai
此文档下载收益归作者所有