首页 > 编程知识 正文

布局管理器有哪些,框架的默认布局管理器

时间:2023-05-05 10:26:03 阅读:110176 作者:1560

布局管理器类型

FlowLayout:组件在一行中从左到右水平排列,填满后重排。 这是Panel,小程序的默认布局管理器。

BorderLayout :北、南、东、西、中,这是窗口、帧和故障的默认布局管理器。

GridLayout :将组件定位为行和列网格

GridBagLayout :更复杂的功能网格布局

CardLayout :每个组件作为一个卡,容器只显示多张卡中的一张,并确定容器的布局

1 .集装箱的组件布局

(1)布局管理器(layout manager ) )。

确定组件在容器中的位置和大小。

调用容器的setLayout布局管理器对象”方法将布局管理器对象指定给容器。

如果容器需要放置零部件并确定其大小,则会向布局管理器对象发送一条消息,以完成该任务。

)2)直接管理组件

调用容器的setlayout(null )方法关闭布局管理器。

调用每个组件的setLocation ()方法来确定组件的位置。

通过调用每个组件的setSize ()方法来确定其大小。

)3)直接管理组件失去平台相关性。

2 .布局管理器

构造函数:

FlowLayout (;

flowlayout(intalign,int hgap,int vgap );

align :对齐方式:左中心灯光

hgap :组件的水平间距(像素) ) ) )。

vgap :组件的垂直间距

使用无参数构造函数创建的FlowLayout对象围绕CENTER对齐,组件之间的所有垂直和垂直间距均为5像素

framef=newframe(flowlayout );

f.setsize (400,300 ); //不起作用

f.setbackground(color.gray );

f.setlayout(newflowlayout ) flowlayout.left,10,20 );

B1=newbutton(button1);

B2=newbutton(button2);

B3=newbutton(button3);

f.add(B1;

f.add(B2;

f.add(B3;

f.setvisible(true );

f.pack (;

3.BorderLayout布局管理器

setlayout(newborderlayout ) )

add(B1,BorderLayout.NORTH ); //东、西、南、北中

当容器大小改变时,组件的相对位置不会改变

setlayout(newborderlayout ) )

add(B1,BorderLayout.NORTH );

当容器大小改变时,组件的相对位置不会改变

framef=newframe(borderlayout );

f.setsize (200,200 );

B1=newbutton(button1);

.

B5=newbutton(button5);

f.add(B1,BorderLayout.NORTH );

f.add(B2,BorderLayout.SOUTH );

f.add(B3,BorderLayout.WEST );

f.add(B4,BorderLayout.EAST );

f.add(B5,BorderLayout.CENTER );

f.setvisible(true );

4 .网格布局管理器

作为布局编辑器创建GridLayout对象,并指定分割网格的行数和列数。

设置布局(new gridlayout ) (行数、列数);

setlayout(newgridlayout ) (行数、列数、行间隔、列间隔);

调用容器的方法add ) )将组件添加到容器中。 组件填充容器的顺序为第一行的第一个、第一行的第二个、……

必须在每个网格中输入程序集。 如果要将网格留空,可以添加空标签。

添加(新标签) );

framef=newframe(gridlayout );

f.setlayout(newgridlayout ) ) 2,3 );

f.setsize (200,100 );

f.setbackground(color.gray );

B1=newbutton('1);

.

B6=newbutton('6);

f.add(B1;

.

f.setvisible(true );

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。