欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java Swing组件布局

程序员文章站 2024-01-31 12:54:34
...

1、Swing组件的addActionListener()方法

接受实现了ActionListener接口的对象作为参数。

 

2、ActionListener接口

该接口只包含了actionPerformed()方法。

3、控制布局 

  • 完全基于代码,没有用来控制组件布置的"资源"。 这点与MFC、C# Windows Form不同。
  • 组件放置在窗体上的方式不是通过绝对坐标控制,而是由"布局管理器"(layout manager)根据组件加入的顺序决定其位置。

JApplet、JFrame、JWindow和JDialog都可以通过getContontPane()得到一个容器(Container),用来包含和显示组件。它还有一个被称为setLayout()的方法,可以通过这个方法来选择不同的布局管理器。其他的类,例如:JPanel,可以直接设置布局管理器。

  • BorderLayout

       Applet在缺省的情况下的布局方式是BorderLayout。如果不加入其他指令,它将接受调用add()方法而加入的组    

       件,把它放置在*,而后把组件向各个方向拉伸,直到与边框对齐。


      Java Swing组件布局

 

  •  FlowLayout

       组件从左到右"流动"到窗体上,直接占满上方的空间,然后向下移动一行,继续流动。


      Java Swing组件布局

  •  GridLayout

       GridLayout允许构建一个放置组件的表格,在向表格里添加组件的时候,它们将按照从左到右,才能够上到下的顺序        加入。在构造器中要指定需要的行数与列数,它们将均匀分布在窗体上。


      Java Swing组件布局

  •  BoxLayout

       使用Box组件进行定位。可以指定组件按照水平或者垂直排列。也可以再组件之间添加间隔。

 

		//Box布局
		Box box = Box.createVerticalBox();
		cp.setLayout(new BorderLayout());
		cp.add(box);
		box.add(btnNorth);
		box.add(Box.createVerticalStrut(10));
		box.add(btnSouth);
		box.add(Box.createVerticalStrut(10));
		box.add(btnEast);
		box.add(Box.createVerticalStrut(10));
		box.add(btnWest);

   
       Java Swing组件布局