到目前為止,所有的程序片都被建立,看起來使用一些不可思議的內部邏輯來布置它們的組件。那是因為程序使用一個默認的方式:FlowLayout。這個簡單的“Flow”的組件安裝在窗體中,從左到右,直到頂部的空格全部再移去一行,並繼續循環這些組件。
這裡有一個例子明確地(當然也是多余地)設置一個程序片的布局管理器去FlowLayout,然後在窗體中安放按鈕。我們將注意到FlowLayout組件使用它們本來的大小。例如一個按鈕將會變得和它的字串符一樣的大小。
//: FlowLayout1.java // Demonstrating the FlowLayout import java.awt.*; import java.applet.*; public class FlowLayout1 extends Applet { public void init() { setLayout(new FlowLayout()); for(int i = 0; i < 20; i++) add(new Button("Button " + i)); } } ///:~
所有組件將在FlowLayout中被壓縮為它們的最小尺寸,所以我們可能會得到一些奇怪的狀態。例如,一個標簽會合適它自已的字符串的尺寸,所以它會右對齊產生一個不變的顯示。