簡體   English   中英

如何設置JPanel大小?

[英]How to set JPanel size?

我正在使用Netbean的表單創建器,並且正在嘗試一些操作。 我不確定是否是布局管理器,但是當我創建自己的JPanel並將其添加到窗口的主內容窗格時,無論我使用哪種重新定義尺寸的方法,面板的大小始終在FrameView中最大化例如setSize或setPreferred大小。 我是AWT和Swing的新手。

使用NetBeans所見即所得的設計器,您可以放心使用-只需確保使用Free Form Design並使用鼠標來調整大小即可。 也許面板本身比FrameView大,所以雙擊它(僅在編輯時)並縮小它。 比雙擊返回父組件要好。

或者,可以在NetBeans網站上查看一些教程。

您不應該手動設置尺寸。 將其留給布局管理器,並且當窗口大小或字體甚至按鈕標簽更改時,GUI不會中斷。

布局管理器的竅門是,在嵌套的JPanel ,您不僅可以使用一個,而且可以使用多個。 這樣,幾乎任何布局都是可能的。

發生這種情況是因為JPanel容器的布局管理器(也許是JFrame或另一個JPanel)指示JPanel最大化。

請執行下列操作:

  1. 找出誰是此JPanel的父級(看看NetBeans的包含對象樹)

  2. 檢查為容器定義了什么布局

  3. 閱讀有關LayoutManager的文檔(它們位於java.awt包中)

  4. ???

  5. 利潤!

以我的經驗,Swing是非常挑剔的事情。 我會嘗試setMaximumSizesetPreferedSize 但要注意的是:每當我使用GridLayout ,它總是會拉伸每個單元格中的內容(我想使其對稱)。 Flow,Box,Border和我認為GridBag都沒有這個問題。

-布雷特

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM