欢迎来到天天文库
浏览记录
ID:25904138
大小:53.50 KB
页数:5页
时间:2018-11-23
《java swing布局管理器实例之boxlayout布局》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、BoxLayout将几个组件以水平或垂直的方式组合在一起,其中各个组件的大小随窗口的大小变化而变化。其实例变量如下:·X_AXIS BoxLayout将以水平方式排列。·Y_AXIS BoxLayout将以垂直方式排列。 要应用BoxLayout,需要用到Box这个Container,这个Container的Layout必须是BoxLayout。Box类还提供了4个不可见组件来帮助实现版面管理,它们是Filler、Glue、Strut和Rigid。普通的BoxLayout实例:importjava.awt.*;importja
2、vax.swing.*;publicclassNormalDemoextendsJFrame{ publicNormalDemo(){ ContainercontentPane=this.getContentPane(); Boxbox=newBox(BoxLayout.X_AXIS);//水平方式 contentPane.add(box); box.add(newJButton("one")); box.add(newJButton("two")); this.set
3、Title("NormalDemo"); this.setSize(300,100); this.setVisible(true); } publicstaticvoidmain(Stringargs[]){ NormalDemotest=newNormalDemo(); }}运行效果如下图所示: 1.Filler 构造函数:Box.Filler(Dimensionmin,Dimensionpref,Dimensionmax) min表示最小的显示区域大小;pref表示最佳的显示区
4、域大小;max表示最大的显示区域大小。当窗口大小被拖动时,组件间的距离不会超过最小值和最大值。FillerBoxLayout实例:importjava.awt.*;importjavax.swing.*;publicclassFillerBoxLayoutDemoextendsJFrame{ publicFillerBoxLayoutDemo(){ ContainercontentPane=this.getContentPane(); Boxbox=newBox(BoxLayout.X_AXIS);
5、 contentPane.add(box); box.add(newJButton("one")); box.add(newBox.Filler(newDimension(100,100),newDimension(200,100),newDimension(300,300))); box.add(newJButton("two")); this.setTitle("FillerBoxLayoutDemo"); this.setSize(500,100); this.set
6、Visible(true); } publicstaticvoidmain(Stringargs[]){ FillerBoxLayoutDemotest=newFillerBoxLayoutDemo(); }}运行效果如下图所示: 2.Glue 当Glue插入组件之间时,它会将组件挤到窗口的最边缘.GlueBoxLayout实例:importjava.awt.*;importjavax.swing.*;publicclassGlueBoxLayoutDemoextendsJFrame{ public
7、GlueBoxLayoutDemo(){ ContainercontentPane=this.getContentPane(); Boxbox=newBox(BoxLayout.X_AXIS); contentPane.add(box); box.add(newJButton("one")); box.add(Box.createGlue());//可以插入水平或垂直的Glue box.add(newJButton("two")); this.setTitle("
8、GlueBoxLayoutDemo"); this.setSize(200,100); this.setVisible(true); } publicstaticvoidmain(Stringargs[])
此文档下载收益归作者所有