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

java Swing布局管理之BoxLayout布局

程序员文章站 2024-03-12 11:00:14
本文为大家解析java swing布局管理中的boxlayout布局,供大家参考,具体内容如下 boxlayout:可以指定在容器中是否对控件进行水平或者垂直放置,比 f...

本文为大家解析java swing布局管理中的boxlayout布局,供大家参考,具体内容如下

boxlayout:可以指定在容器中是否对控件进行水平或者垂直放置,比 flowlayout 要更为灵活
boxlayout与其他布局管理器稍有不同,必须向其构造函数中传递容器实例的引用,由该容器使用boxlayout。另外必须指定boxlayout中组件的布局方式:垂直排列(按列)或水平排列(按行)。用水平组件和垂直组件的不同组合嵌套多面板的作用类似于 gridbaglayout,但没那么复杂。
1.构造函数
boxlayout(container target, int axis) :创建一个将沿给定轴放置组件的布局管理器。
line_axis  :指定应该根据目标容器的 componentorientation 属性确定的文本行方向放置组件。
page_axis :指定应该根据目标容器的 componentorientation 属性确定的文本行在页面中的流向来放置组件。
x_axis  :指定组件应该从左到右放置。
y_axis  :指定组件应该从上到下放置。
2.常用方法
getaxis()  :返回用于布局组件的轴。
getlayoutalignmentx(container target)  :返回容器沿 x 轴的对齐方式。
getlayoutalignmenty(container target) :  返回容器沿 y 轴的对齐方式
gettarget() :返回使用此布局管理器的容器。
3.实例

<span style="font-family:kaiti_gb2312;font-size:18px;">import java.awt.container; 
 
import javax.swing.boxlayout; 
import javax.swing.jbutton; 
import javax.swing.jframe; 
import javax.swing.uimanager; 
 
public class boxlayoutdemo { 
  public static void main(string[] args) { 
    try { 
      uimanager.setlookandfeel(uimanager.getsystemlookandfeelclassname()); 
    } catch (exception e) { 
    } 
    jframe frame = new jframe("boxlayout test"); 
    frame.setdefaultcloseoperation(jframe.exit_on_close); 
    container panel = frame.getcontentpane(); 
    panel.setlayout(new boxlayout(panel, boxlayout.y_axis)); 
    for (float align = 0.0f; align <= 1.0f; align += 0.25f) { 
      jbutton button = new jbutton("x align = " + align); 
      button.setalignmentx(align); 
      panel.add(button); 
    } 
    frame.setsize(400, 300); 
    frame.setvisible(true); 
  } 
 
} 
</span> 

4.结果

java Swing布局管理之BoxLayout布局

以上就是本文的全部内容,希望对大家学习java swing布局管理有所帮助和启发,谢谢大家的阅读。