小博老師解析Java核心技術(shù) ——JSwing窗體布局

[引言]

我們在學(xué)習(xí)Java編程的時候,如果需要開發(fā)客戶端窗體類型的程序,可以使用JDK中的awt和swing庫。本文開始小博老師就繼續(xù)為大家演示如何實(shí)現(xiàn)Java窗體布局,達(dá)到美化界面的效果。

[步驟閱讀一]流水布局FlowLayout

流水布局是Java窗體布局中最基礎(chǔ)的布局方式,其布局原則是將所有窗體中控件水平擺放,如果一行寬度不夠則會自動換行,并且同一行中的控件水平居中。我們來看一個簡單的案例,核心代碼如下:

publicclassLayoutFrameextendsJFrame{

publicLayoutFrame(){

super("博為峰教育");

setBounds(200, 100, 300,

300);

//

設(shè)置窗體布局器(流水布局器)

setLayout(newFlowLayout());

//

循環(huán)生成10個按鈕控件(非固定指令,僅作布局演示)

for(inti= 1 ;i<= 10 ;i++ ){

//

實(shí)例化 按鈕控件

JButtonbt=newJButton("按

鈕");

//

將按鈕控件添加到窗體中

add(bt);

}

setVisible(true);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

}

實(shí)例化窗體對象,并且運(yùn)行后效果:

[步驟閱讀二]邊界布局BorderLayout

邊界布局是Java窗體中比較特殊的一種布局,以“東南西北中”的形式對窗體控件進(jìn)行布局,在某些特殊的App如桌面類游戲中運(yùn)用尤其多,小博老師就不一一列舉了,相信小伙伴們都懂的。我們來做一個簡單的案例,核心代碼如下:

publicclassLayoutFrameextendsJFrame{

publicLayoutFrame(){

super("博為峰教育");

setBounds(200, 100, 300,

300);

//

設(shè)置窗體布局器(邊界布局器)

setLayout(newBorderLayout());

//

生成5個按鈕控件,分別占據(jù)“東南西北中”五大方位(非固定指令,僅作布局演示)

JButtonbtEast=newJButton("東");

JButtonbtSouth=newJButton("南");

JButtonbtWest=newJButton("西");

JButtonbtNorth=newJButton("北");

JButtonbtCenter=newJButton("中");

//

將5個按鈕控件分別添加到窗體中

add(btEast,BorderLayout.EAST);

add(btSouth,BorderLayout.SOUTH);

add(btWest,BorderLayout.WEST);

add(btNorth,BorderLayout.NORTH);

add(btCenter,BorderLayout.CENTER);

setVisible(true);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

}

實(shí)例化窗體對象,并且運(yùn)行后效果:

[步驟閱讀三]網(wǎng)格布局GridLayout

網(wǎng)格布局類似于表格布局,在很多界面布局技術(shù)中都有,以行和列的形式對窗體中的控件進(jìn)行布局。我們來看一個簡單的案例,核心代碼如下:

publicclassLayoutFrameextendsJFrame{

publicLayoutFrame(){

super("博為峰教育");

setBounds(200, 100, 300,

300);

//

設(shè)置窗體布局器(網(wǎng)格布局器(行數(shù),列數(shù)))

setLayout(newGridLayout(6, 4));

//

循環(huán)多個按鈕控件(非固定代碼,僅作布局演示使用)

for(inti= 1;i<= 24 ;i++ ){

//

實(shí)例化 按鈕控件對象

JButtonbt=newJButton("按

鈕");

add(bt);

}

setVisible(true);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

}

實(shí)例化窗體對象,并且運(yùn)行后效果:

[步驟閱讀四]定位布局

定位布局是Java窗體界面布局中,使用頻度最高的一種布局方式,也是最自由的一種布局方式,但是缺點(diǎn)在于使用起來比較繁瑣(需要自己設(shè)定坐標(biāo)位置和寬度高度),而且當(dāng)窗體受到用戶手勢操作時(比如窗口最大化,最小化)時,界面布局需要我們自行修改且重繪界面。我們先來看一個簡單案例,核心代碼如下:

publicclassLayoutFrameextendsJFrame{

publicLayoutFrame(){

super("博為峰教育");

setBounds(200, 100, 300,

300);

//

設(shè)置窗體布局器(布局器參數(shù)傳入空對象即表示使用定位布局器)

setLayout(null);

//

實(shí)例化 按鈕控件對象(非固定代碼,僅作界面布局演示)

JButtonbt=newJButton("按

鈕");

//

使用定位布局的話,每個控件需要自行設(shè)置位置和寬高

bt.setBounds(50, 20, 80, 25);

//

將按鈕控件添加到窗體中

add(bt);

setVisible(true);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

}

實(shí)例化窗體對象,并且運(yùn)行后效果:

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容