|
AsWing布局管理——FlowLayout [原文] http:///blog/?p=113 [原文中有flash效果演示] FlowLayout使容器內(nèi)的組件按從左到右的順序排列,每個(gè)組件都按最合適的大小顯示,直到這一行放不下后,會(huì)換到下一行,類似于文本書(shū)寫(xiě)的形式。
Actionscript:
package{import flash. display. Sprite; import flash. display. StageScaleMode;
import org.aswing.JFrame; import org.aswing.JButton; import org.aswing.FlowLayout; import org.aswing.JTextArea; import org.aswing.JLabel; import org.aswing.AsWingManager;
public class FlowLayoutTest extends Sprite { public function FlowLayoutTest() { AsWingManager.setRoot(this); var frame:JFrame = new JFrame(this, "FlowLayoutTest"); frame.getContentPane().setLayout(new FlowLayout()); var label1:JLabel = new JLabel("JLabel"); var button1:JButton = new JButton("btn1"); var button2:JButton = new JButton("buttttttton2"); var button3:JButton = new JButton("button"); var text1:JTextArea = new JTextArea("改變窗口的寬度查看效果"); frame.getContentPane().appendAll(label1, button1, button2, button3, text1); frame.show(); frame.setSizeWH(160, 280); stage.scaleMode = StageScaleMode.NO_SCALE; } } }
AsWing布局管理——EmptyLayout
[原文] http:///blog/?p=112 EmptyLayout是對(duì)LayoutManager接口的空實(shí)現(xiàn),是其他布局管理的基類,如果要對(duì)容器內(nèi)組件進(jìn)行絕對(duì)定位和大小控制,可以使用EmptyLayout
Actionscript:
package{import flash. display. Sprite; import flash. display. StageScaleMode;
import org.aswing.AsWingManager; import org.aswing.JFrame; import org.aswing.JButton; import org.aswing.EmptyLayout;
public class EmptyLayoutTest extends Sprite { public function EmptyLayoutTest() { AsWingManager.setRoot(this); var frame:JFrame = new JFrame(this, "EmptyLayoutTest"); frame.getContentPane().setLayout(new EmptyLayout()); var button1:JButton = new JButton("button1"); button1.setSizeWH(80, 30); button1.setLocationXY(50, 20); frame.getContentPane().append(button1); var button2:JButton = new JButton("button2"); button2.setSizeWH(200,150); button2.setLocationXY(60, 70); frame.getContentPane().append(button2); frame.show(); frame.setSizeWH(350, 280); this.stage.scaleMode = StageScaleMode.NO_SCALE; } } }
AsWing布局管理——BorderLayout [原文] http:///blog/?p=111
感覺(jué)學(xué)AsWing應(yīng)該先熟悉他的布局管理,才能靈活運(yùn)用,組合出各種界面
從現(xiàn)在就記錄一下平時(shí)學(xué)到的布局管理器的使用方法,還請(qǐng)大大們指教 :[smile]:
BorderLayout: 個(gè)人感覺(jué)邊框布局是一種使用起來(lái)比較簡(jiǎn)單的布局方式,他將容器分為5各部分 東南西北中,每一個(gè)區(qū)域中可以容納一個(gè)組件,使用的時(shí)候也是通過(guò)BorderLayout中的5個(gè)方位常量(NORTH, WEST等)來(lái)確定組件所在的位置。
Actionscript:
package {
import flash.display.Sprite; import flash.display.StageScaleMode;
import org.aswing.AsWingManager; import org.aswing.JFrame; import org.aswing.JButton; import org.aswing.BorderLayout; public class BorderLayoutTest extends Sprite { public function BorderLayoutTest():void { AsWingManager.setRoot(this); var frame:JFrame = new JFrame(this, "BorderLayout"); // BorderLayout 構(gòu)造函數(shù)的2個(gè)參數(shù)分別為 hgap 和 vgap // 用于設(shè)定組件之間的水平間隙和垂直間隙 frame.getContentPane().setLayout(new BorderLayout(5, 5)); var button1:JButton = new JButton("Button North"); frame.getContentPane().append(button1, BorderLayout.NORTH); var button2:JButton = new JButton("Button West"); frame.getContentPane().append(button2, BorderLayout.WEST); var button3:JButton = new JButton("Button South"); frame.getContentPane().append(button3, BorderLayout.SOUTH); var button4:JButton = new JButton("Button East"); frame.getContentPane().append(button4, BorderLayout.EAST); var button5:JButton = new JButton("Button Center"); frame.getContentPane().append(button5, BorderLayout.CENTER);
frame.show(); frame.setSizeWH(350, 280); this.stage.scaleMode = StageScaleMode.NO_SCALE; } } }
|