我使用的是Netbean的表單創建器,我嘗試了一些東西。我不確定它是否是佈局管理器,但是當我創建自己的JPanel並將其添加到我的窗口的主內容窗格時,面板的大小始終在FrameView內部最大化,而不管使用何種重新標註方法如setSize或setPreferred大小。我對AWT和Swing很陌生。如何設置JPanel大小?
回答
使用NetBeans所見即所得的設計器,它是一個和平的蛋糕 - 只要確保使用Free Form Design並使用鼠標調整大小。也許面板本身比FrameView大,所以雙擊它(你正在編輯它),並使其更小。比雙擊回到父組件,你應該沒問題。
或者可能在NetBeans site上查看一些教程。
以我的經驗,Swing是一件非常挑剔的事情。我會嘗試setMaximumSize
和setPreferedSize
。作爲一個側面說明:雖然我曾經使用過GridLayout
,它總是延伸每個單元格中的任何內容(爲了使它對稱我猜)。流,框,邊框,我認爲GridBag沒有這個問題。
-Brett
setPreferredSize是您想給佈局管理器的提示。 – 2010-06-22 19:28:54
你不應該向手動設置大小。將其留給佈局管理器,當窗口大小或字體甚至按鈕標籤更改時,GUI不會中斷。
與的訣竅是,你可以使用不只一個,但幾個,嵌套JPanel
s。這樣,幾乎任何佈局都是可能的。
比嵌套廣告無窮無敵(或者是那個廣告無聊),要使用面向桌面的佈局管理器(http://www.google.com/search?q=table-oriented+layout+manager)作爲您的主要佈局管理器。 – 2010-06-22 19:53:14
@Software Monkey:我肯定不會說這是一個更好的方法;它取決於GUI的要求。對於類似於表單的數據輸入UI,面向表格的佈局是很好的。但並不是所有的用戶界面都是這樣,即使這樣,嘗試使用單一佈局管理器的一切工作也不是一個好主意。 – 2010-06-22 20:00:37
好的,謝謝邁克爾。你在說我不應該混淆根窗格,並且我應該添加控件到佈局管理器控制窗格,這些控件應該具有像我期待的相對位置。 我只是將編輯控件拖到子窗格中作爲測試,並將其展開到其父窗格中。我不知道屬性控制這種行爲,但更多的信息將不勝感激。 – chaz 2010-06-22 21:48:51
發生這種情況是因爲JPanel容器的佈局管理器(可能是JFrame或另一個JPanel)指示JPanel最大化。
執行以下操作:
瞭解,這是誰的JPanel的父(看看的NetBeans的包容對象樹)
檢查,什麼佈局的容器
定義閱讀LayoutManager的(他們在java.awt包)
的文檔???
利潤!
- 1. 設置JPanel的大小
- 2. Java Swing設置JPanel大小
- 3. 如何根據JPanel的大小設置JTextPane的大小?
- 4. 無法設置JDialog中JPanel的大小
- 5. 設置JPanel或JOptionPane的大小
- 6. 設置JFrame大小後,JPanel大小不會更新
- 7. 設置JPanel的大小不取決於JFrame的大小
- 8. java使用JPanel的大小來設置組件的大小
- 9. 在JScrollPane和JPanel中設置JTable的大小和JFrame的大小
- 10. 創建新的JPanel時可以設置JPanel的大小嗎?
- 11. 如何設置特定佈局中jpanel組件的大小?
- 12. 如何設置JFrame大小以適應CardLayout顯示的JPanel?
- 13. 如何設置UICollectionViewCell大小
- 14. 如何設置PlayN大小
- 15. 如何設置JDesktopPane大小
- 16. 如何設置CustomView大小?
- 17. 如何將java swing組件大小設置爲其封閉父大小。例如:將JLabel大小設置爲其封閉的JPanel大小。
- 18. 如何最大化圖像大小作爲JPanel的大小
- 19. Java Swing JPanel大小
- 20. JPanel大小問題
- 21. JPanel位置和大小變化怪異
- 22. 如何將JPanel放入JTabbedPane大小?
- 23. 如何獲得真正的JPanel大小?
- 24. 如何自動調整jPanel的大小
- 25. 如何修改JScrollPane中的JPanel大小?
- 26. 如何以動態大小居中JPanel
- 27. 如何根據設備屏幕大小設置div大小?
- 28. 設置大小
- 29. 如何設置在JPanel上添加的按鈕的大小和邊界?
- 30. 設置JTextField在JPanel中的固定大小
您使用的是什麼佈局管理器? – Xorty 2010-06-22 18:35:40