您的位置:首页 > 编程语言 > Java开发

java常用组件以及布局管理器

2015-01-29 20:48 183 查看

Swing组件按功能来分,可以分为如下几类:

Ø 顶层容器:JFrame、JApplet、JDialog和JWindow

Ø 中间容器:JPanel、JScrollPane、JSplitPane、JToolBar

Ø 特殊容器:在用户界面上有特殊作用的中间容器,如:JInternalFrame、JRootPane、JLayeredPane和JDestopPane

Ø 基本组件:JButton、JComboBox、JList、JMenu、JSlider

Ø 不可编辑信息的显示组件:向用户显示不可编辑信息的组件,如:JLabel、JProgressBar、JToolTip等

Ø 可编辑信息的组件:JTable、JTextArea和JTextField

Ø 特殊对话框组件:JColorChooser和JFileChooser

布局管理器用来管理组件在容器中的布局

绝对布局管理器

除了布局管理器之外,也可以使用绝对布局。绝对布局就是硬性指定组件在容器中的位置和大小

getContentPane().setLayout(null); //JFrame窗体需要调用getContentPane()方法获取窗体容器,然后取消布局管理器(即使用绝对布局管理器)
jp3.setBounds(0,0, 500, 100);

如果窗体内组件使用setBounds(int x,int y,int width,int height),参数x,y代表这个组件在父容器中的位置,而width和height则代表组件的宽度与高度。

如果窗体使用setBounds(int x,int y,int width,int height),参数x,y代表窗体在整个屏幕上出现的位置。

所有的容器都有默认的布局管理器,如果没有为容器指定布局管理器,则使用默认的布局管理器

为容器指定布局管理器,通过调用setLayout(new XxxLayout),如:

c. setLayout(new XxxLayout)

常用的布局管理器:(这些布局管理器不可以人为调整组件的大小,组件的大小是根据容器的大小自动选择合适的大小)

1. FlowLayout,组件像水流一样向某方向移动,JPanel默认使用FlowLayout布局管理器(不限制组件大小,容器缩放组件大小不变,但是位置会变)

2. BorderLayout,将容器分为南、北、左、右、中五个部分,如可以利用BorderLayout.SOUTH来设置组件的位置

3. GridLayout,网格布局,构造方法如下:GrideLayout(int rows,int cols)、GrideLayout(int rows,int cols,int hgap,int vgap),当向该布局管理器的容器中添加组件时,默认从左到右,从上到下依次添加到每个网格中(组件的相对位置不随容器缩放而改变,但大小会改变,所有的组件大小相同)

4. CardLayout布局管理器,将加入容器的所有组件看成一叠卡片

5. GridBagLayout,功能强大,但是很复杂

6. BoxLayout,保留了GridBagLayout的很多优点,但是没那么复杂
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: