2011-01-14 11 views
8

Otrzymuję długą listę błędów. Czy ktoś może mi zasugerować, gdzie się nie udać z GroupLayout.GroupLayout podając błąd w huśtawce java

layout.setHorizontalGroup(
    layout.createSequentialGroup() 
     .addComponent(new JLabel("Enter Book Name")) 
     .addComponent(new JTextField("TextField", 20)) 
); 

Błąd:

 
    Exception in thread "main" java.lang.IllegalStateException: 
     javax.swing.JTextField[,0,0,0x0,invalid,layout=javax.swing. 
      plaf.basic.BasicTextUI$UpdateHandler,alignmentX=0.0, 
      alignmentY=0.0,border=javax.swing.plaf.BorderUIResource$ 
      [email protected],flags=296,maximumSize=, 
      minimumSize=,preferredSize=,caretColor=sun.swing. 
      PrintColorUIResource[r=51,g=51,b=51],disabledTextColor=javax 
      .swing.plaf.ColorUIResource[r=184,g=207,b=229],editable=true 
      ,margin=javax.swing.plaf.InsetsUIResource[top=0,left=0, 
      bottom=0,right=0],selectedTextColor=sun.swing. 
      PrintColorUIResource[r=51,g=51,b=51],selectionColor=javax. 
      swing.plaf.ColorUIResource[r=184,g=207,b=229],columns=20, 
      columnWidth=0,command=,horizontalAlignment=LEADING] 
      is not attached to a vertical group 
      at javax.swing.GroupLayout.checkComponents(Unknown Source) 
      at javax.swing.GroupLayout.prepare(Unknown Source) 
+4

Jakiego błędu dostałeś? –

+0

Ja, unikam używania tego układu podczas ręcznego kodowania mojego GUI. Jest o wiele łatwiejszych w użyciu. –

+0

Polecam układ oparty na tabeli jako podstawowy układ dla dowolnego GUI. Wyszukaj "menedżer układu tabeli java"; możesz znaleźć mój pod adresem http://www.softwaremonkey.org/Code/MatrixLayout –

Odpowiedz

15

Podczas korzystania GroupLayout, trzeba określić poziomą i układ pionowy. Każdy składnik musi być podany dokładnie jeden raz w każdej grupie. Nie wykonanie tego powoduje ten błąd.

Dodatkowo upewnij się, że prawidłowo krzyżujesz każdy przedmiot. Jeśli tworzysz siatkę, upewnij się, że oba kierunki są ciągami równoleżników i na odwrót. Jeśli tworzysz jeden rząd przycisków lub coś takiego, upewnij się, że są one równoległe w jedną stronę, a kolejne sekwencyjnie.

+0

Dzięki, naprawdę rozwiązujesz moje problemy ... w przeciwieństwie do @SoftwareMonkey. – matheusvmbruno

Powiązane problemy