2014-04-08 24 views
0

下面我有以下代碼:如何使GridBagLayout的多個邏輯

c.fill = GridBagConstraints.HORIZONTAL; 
    c.gridx = 1; 
    c.gridy = 0; 
    config.add(first = new JTextArea(), c); 

    c.gridx = 1; 
    c.gridy = 2; 
    config.add(second = new JTextArea(), c); 

    c.gridx = 1; 
    c.gridy = 10; 
    c.anchor = GridBagConstraints.PAGE_END; 

    config.add(bottom, c); 

而且目前我得到以下截圖: enter image description here

「底」是由按鍵面板。對於初學者來說,兩個文本字段合併在一起,並且按鈕應該在底部。查看GridBagLayout上的Oracle指令並沒有太多幫助。有任何想法嗎?

+1

你可能應該使用'BorderLayout'來代替。 –

+0

我對你的建議是放棄所有佈局,並使用[Mig layout](http://www.miglayout.com/)解決所有佈局問題。由oracle提供的佈局充其量是非常麻煩的,除非你對它們有很好的體驗,否則很難高效使用。 – Quillion

+0

@Quillion來自Oracle的哪些特定佈局是錯誤的,特別是以何種方式?對於任何標準的LayoutManager,我都沒有發現這種情況。 – splungebob

回答

0

假設你的類繼承自JPanel中,然後調用 超(新的GridBagLayout()) 在你的構造可能會解決這個問題的第一線......

嘗試加入這一行,以及 c.width = GridBagConstaints.REMAINDER;