[英]Why say panel and boxlayout twice?
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
panel
對BoxLayout
爭論有些令人困惑。 您需要指定BoxLayout
實例附加到的目標。 此外,在許多基於LayoutManager2
接口的LayoutManager2
, BoxLayout
要求傳入panel
,並執行檢查您是否傳入了正確的panel
。
Y_AXIS是一個類變量,它是BoxLayout
方向的兩個合法的int值之一。 您可以只傳入值0,但使用常數要好得多。
好吧,主要是因為BoxLayout是一個老的API,但他們還不了解。
如果您對一個好的靈活的現代布局管理器感興趣,請使用MigLayout
BoxLayout
很容易BoxLayout
構造函數的參數( Y_AXIS
)屬於BoxLayout
類,因此您需要指定它。 可能還有另一個Y_AXIS
值,可能會使用錯誤的值。
這是封裝的基礎。
關於panel
雙重提及,我不確定。 但是似乎有必要告訴面板其布局管理器是什么,並且布局管理器需要知道將其應用於哪個面板(因為它需要知道面板的內容以便智能地進行布局),這似乎是可行的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.