IntelliJ gui creator: JPanel gibt beim Hinzufügen einer Komponente eine Laufzeit-Nullzeiger-Ausnahme

8

Ich habe ein Problem mit der Java-GUI-Erstellung von IntelliJ. Der Großteil des Codes hinter dem Panel ist leider im GUI-Creator versteckt und kann von mir nicht bearbeitet werden.

Ich habe mit dem ItelliJ GridLayoutManager ein leeres JPanel "questionPanel" erstellt. Wenn ich versuche, dem Panel etwas hinzuzufügen, erhalte ich eine Nullzeiger-Ausnahme, obwohl das Panel definitiv nicht null ist. Ich habe auch versucht, ein JTextField dem Layout hinzuzufügen (aus Neugier) und das hat auch nicht geholfen. Das JTextField wird angezeigt, aber ich kann immer noch nichts aus dem Code hinzufügen.

Wenn ich den Layout-Manager zu etwas anderem ändere (GridBagLayout, FormLayout, BorderLayout, etc.), erhalte ich keine Fehler mehr, aber nichts taucht auf.

DisplayView.java

%Vor%

Hat jemand eine Vorstellung davon, was hinter den Kulissen vor sich geht oder wie ich Komponenten auf das Panel bringen kann? Danke.

Sample Stack Trace (Diese Ablaufverfolgung wird nicht mit demselben Code wie oben erstellt, aber es ist der gleiche Fehler):

%Vor%     
kevin948 09.03.2012, 18:20
quelle

4 Antworten

11

Für jeden, der den GUI-Ersteller von IntelliJ verwendet und denselben Fehler erhält, behob ich das Problem, indem ich den Layout-Manager des Bereichs manuell im Code ändere, anstatt verschiedene Layout-Manager innerhalb des GUI-Erstellers auszuwählen.

Beispiel:

%Vor%     
kevin948 15.05.2012, 14:37
quelle
1

Ich habe den gleichen Fehler wie Sie. Ich habe ein JPanel mit Layout-Manager auf GridLayoutManager Intellij festgelegt. Als ich versuchte, eine Komponente zu diesem Panel hinzuzufügen, bekam ich die Ausnahme.

Ich ging dann in den GUI-Editor und wechselte zu BorderLayout und alles hat gut funktioniert. Ich bin nicht sicher, warum es nicht für dich arbeitet.

    
Henry 04.07.2015 15:55
quelle
1

Ich habe das Problem als Fehler auf der JetBrains-Website angemeldet und die folgende Antwort erhalten:

  

Um NPE zu reparieren, fügen Sie eine untergeordnete Komponente zu einem JPanel mit GridLayoutManager mit GridConstraints wie folgt hinzu:

%Vor%
  

oder verwenden Sie ein anderes Layout.

Die Verwendung der GridConstraints löste das Problem für mich genauso wie mit einem anderen LayoutManager.

Ich verkürzte & amp; die Antwort für Lesbarkeit bearbeitet

    
Peter 16.02.2016 11:27
quelle
0

Der Intellij IDEA GUI Creator ermöglicht Ihnen auch das Einfügen von Bildern als Etiketten. Dafür erstellen Sie ein Label, wo Sie wollen, und in seinen Konfigurationen finden Sie und Symbol-Slot, wo Sie den Pfad zu Ihrem Bild wählen. Und das ist es !!

    
Jorge Lima 26.11.2014 10:12
quelle

Tags und Links