我不確定GridBagLayoutManager是否是唯一的佈局管理器,但這是我的問題。我在GridBagLayout中水平放置了4個控件。爲了讓這個例子簡單些,每個控件的形式都是1/4,並且每個控件的大小與其他控件的比例相同。這四個控件是JTextField,其中每個文本字段都映射到來自ResultSet的記錄中的列。表單上的其他控件允許用戶瀏覽記錄。GridBagLayout管理器和調整大小控件
如果我從一條記錄導航到另一條記錄,那麼文本字段會更新它們的文本以顯示新數據。但是,文本字段也會根據它們顯示的文本數量成比例地自動調整大小......包含大量數據的文本字段的大小會擴大,並且包含較少數據量的文本字段會被壓扁。如果我在ResultSet中運行了10條記錄,那麼這些控件總是調整自己的大小,而且至少可以說很奇怪。
我想要做的就是防止這些控件調整大小,除非(和直到)底層容器被調整大小。所以,如果我調整窗口的大小,那麼我希望控件調整大小(根據佈局中的「weight x」變量),但我不希望控件調整大小,因爲它們顯示的文本量變得更多或更少。
有人有什麼想法嗎?
我要補充一點,調整大小的行爲不只是一個JTextField的「問題」,但也會發生與其他控件,如的JComboBox等 – user85116 2009-07-13 14:35:05