首页 > 编程知识 正文

java五种常用的布局管理器,javaswing常用控件

时间:2023-05-04 12:25:40 阅读:110183 作者:4341

一. JFrame简单运用:

package com.test1; import java.awt.*; import javax.swing.*; 公共类demo1_ 1扩展jframe//定义按钮组件JButton jb1=null; publicstaticvoidmain (string [ ] args ) {Demo1_1 dm=new Demo1_1); (//构造函数public Demo1_1) ) ) )//初始化按钮组件jb1=new JButton ('按钮1 ); //添加组件this.add(JB1 )//窗口标题this.settitle(Helloworld ); //设置窗口大小。 窗口大小单位为像素this.setsize (200,200 ); //设定窗口位置。 窗口位置定义窗口左上角点的坐标this.set location (100,100 )。 //将JVM也设置为在关闭窗口时退出this.setdefaultcloseoperation (jframe.exit _ on _ close ); //显示窗口this.setvisible () true; (二、布局经理- -介绍

1、概念:集装箱(例如JFrame )中组件的位置和大小由布局管理器来确定。 所有容器都使用布局管理器自动管理组件的布局。

2、种类: java共提供5种布局管理器。 流布局管理器(FlowLayout )、边界布局管理器(BorderLayout )、网格布局管理器(GridLayout )、卡片布局管理器(CardLayout ) 前三个是最常见的布局经理。

介绍:

(一)、边界布局经理: BorderLayout )将集装箱简单划分为东南西北五个区域,

中央区域最大,JFrame默认此布局。

案例代码:

/** BorderLayout演示* 1、JFrame* 2继承、所需组件定义* 3、创建组件* 4、添加组件* 5、表单设置* 6、表单*/packagecom import javax.swing.*; public class demo1_2extends jframe//定义五个组件JButton jb1、jb2、jb3、jb4和jb5; publicstaticvoidmain (string [ ] args )//todo auto-generatedmethodstubdemo1_ 2dm=new demo1_2); (//构造函数public Demo1_2) ) )//创建组件jb1=new JButton ('中部); jb2=new JButton (北部); jb3=new JButton (东部); jb4=new JButton (南部); jb5=new JButton ('西部'); //添加组件this.add(JB1,BorderLayout.CENTER ); this.add(JB2,BorderLayout.NORTH; this.add(JB3,BorderLayout.EAST; this.add(JB4,BorderLayout.SOUTH; this.add(JB5,BorderLayout.WEST; //表单属性设置//表单标题this.setTitle ('边界布局例) ); //设置表单大小this.setsize (300,300 ); //表单位置this.set location (800,400 ); //设置为在关闭窗体的同时退出JVM this.setdefaultcloseoperation (jframe.exit _ on _ close ); //显示表单this.setvisible(true ) }

边界布局管理器--注意事项:

并不是必须全部追加一五个部分

2、中部组件自动调节大小(中央部分最强) ) )。

3、JFrame、JDialog的缺省布局管理器为BorderLayout

)二、将按照添加流布局管理器(FlowLayout )组件的顺序定义的组件从左到右放置在容器中,并在到达容器边界时将组件放置在下一行中。 在FloeLayout中,可以左对齐、居中和右对齐组件。

案例代码如下。

/**流布局案例*/package com.test1; import java.awt.*; import javax.swing.*; public class demo1_3extends jframe { jbutton JB 1、jb2、jb3、jb4、jb5、jb6; publicstaticvoidmain (string [ ] args ) {//TODO

Auto-generated method stubDemo1_3 dm=new Demo1_3();}//构造public Demo1_3(){//创建组件jb1=new JButton("关羽");jb2=new JButton("可靠的大船");jb3=new JButton("赵云");jb4=new JButton("马超");jb5=new JButton("黄忠");jb6=new JButton("csdsj");//添加组件this.add(jb1);this.add(jb2);this.add(jb3);this.add(jb4);this.add(jb5);this.add(jb6);//设置布局管理器,流式布局默认是中间对齐,//我们要在new FlowLayout(FlowLayout.LEFT)设置,此时设置的是左对齐this.setLayout(new FlowLayout(FlowLayout.LEFT));//设置窗体属性//窗体标题this.setTitle("边界布局案例");//设置窗体大小this.setSize(300, 300);//设置窗体位置this.setLocation(800, 400);//设置关闭窗体同时退出JVMthis.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//显示窗体this.setVisible(true);}}


流式布局(FlowLayout)--注意事项

1、不限制他所管理的组件的大小,允许他们有最佳大小

2、当容器被缩放时,组件的位置可能变化,但是组件的大小不变

3、默认组件是居中对齐,可以通过FlowLayout(intalign)函数来指定对齐方式


(三)、网格布局GridLayout:它将容器分割成多行多列,组件被填充到每个网格中,添加到容器中的组件首先放置在左上角的网格中,然后从左到右放置其他的组件,当占满该行的所有网格后,接着继续在下一行从左至右放置组件。

案例代码如下:

/* * 网格布局演示 */package com.test1;import java.awt.*;import javax.swing.*;public class Demo1_4 extends JFrame{//定义组件int size=9;JButton jbs[]=new JButton[size];public static void main(String[] args) {// TODO Auto-generated method stubDemo1_4 dm=new Demo1_4();}//构造public Demo1_4(){//创建组件for(int i=0;i<size;i++){jbs[i]=new JButton(String.valueOf(i));}//设置网格布局管理器,设置3行3列,每个组件间隔水平方向10,垂直方向10 个像素this.setLayout(new GridLayout(3,3,10,10));//添加组件for(int i=0;i<size;i++){this.add(jbs[i]);}//设置窗体属性this.setTitle("网格布局案例");this.setSize(300,300);this.setLocation(700,400);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setVisible(true);}}


网格布局GridLayout --注意事项

1、组件的相对位置不随容器的缩放变化,但是组件的大小会变,也就是讲我们缩放窗口时组件之间的间隙是不会随之变化的,但是组件大小会等比例的变化

2、所有组件的大小是相同的

3、可以通过GridLayout(int rows,int cols,int hgap,int vgap)来指定网格的行/列,水平间隙/垂直间隙。






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