2013-05-09 5 views
0

Возможно, некоторые из вас смогут мне помочь, потому что я сижу на этом несколько часов, и я не знаю, что делать. Я проверил документацию несколько раз, но без какого-либо эффектаПространства между элементами MigLayout

Мне нужно создать java gui, где компоненты A1, A2, A3 будут выровнены влево, элементы B1, B2, B3 будут выровнены вправо , TextArea будет расти вместе с окном, а нижняя часть будет похожа на цифровую клавиатуру.

Проблема номер один: Предметы, которые не хотят меняться, когда я изменить размер окна

Проблема номер два: Большой разрыв между кнопками

http://i.stack.imgur.com/aZmKw.png

package zad32; 

    import javax.swing.*; 
    import net.miginfocom.swing.*; 
    public class MigTest extends JFrame { 

     public MigTest() { 
     setLayout(new MigLayout()); 

     add(new JButton("A1")); 
     add(new JButton("A2")); 
     add(new JButton("A2")); 

     add(new JButton("B1"), "right align"); 
     add(new JButton("B2"), "right align"); 
     add(new JButton("B3"), "right align, wrap"); 

     add(new JScrollPane(new JTextArea(20,50)), "grow, span, wrap"); 

     add(new JButton("1")); 
     add(new JButton("2")); 
     add(new JButton("3")); 
     add(new JTextField("To jest JTextField", 15), "span 3, right align, wrap"); 

     add(new JButton("4")); 
     add(new JButton("5")); 
     add(new JButton("6")); 
     add(new JTextField("To jest JTextField", 15), "span 3, right align, wrap"); 

     add(new JButton("7")); 
     add(new JButton("8")); 
     add(new JButton("9")); 
     add(new JTextField("To jest JTextField", 15), "span 3, right align, wrap"); 

     setDefaultCloseOperation(DISPOSE_ON_CLOSE); 
     pack(); 
     setVisible(true); 
     } 

     public static void main(String[] args) { 
     new MigTest(); 
     } 

    } 
+0

Используйте несколько вложенных макетов. –

ответ

0

ответ для разрыва:

font-size:0; must be added to parent element 

в качестве альтернативы, вы можете:

setLayout(new MigLayout("gap rel 0", "grow")); 
+0

Когда я попробую setLayout (новый MigLayout («gap rel 0», «grow»)); i get error Конструктор MigLayout (String, String) не определен –

+0

Когда я меняю его на panel.setLayout (новый MigLayout («gap rel 0», «grow», null)); он растет, но между элементами все еще существует большое пространство :( –

Смежные вопросы