Mam problem z tworzeniem java gui IntelliJ użytkownika. Większość kodu za panelem jest niestety ukryta w gui twórcy, a nie edytowalna przeze mnie.IntelliJ gui twórca: JPanel daje wykonania pustego wskaźnika wyjątek na dodanie dowolnego komponentu
Utworzono pustą "QuestionPanel JPanel" za pomocą GridLayoutManager ItelliJ. Gdy próbuję dodać coś do tego panelu, otrzymuję wyjątek wskaźnika pustego, mimo że panel zdecydowanie nie jest pusty. Próbowałem również dodać JTextField do układu (z ciekawości) i to też nie pomogło. Pojawia się JTextField, ale nadal nie mogę dodać niczego z wewnątrz kodu.
Po zmianie menedżera układu na cokolwiek innego (GridBagLayout, FormLayout, BorderLayout itp.) Nie występują już błędy, ale nic się nie pokazuje.
DisplayView.java
private JPanel questionPane;
public void initialize()
{
questionPane.addMouseListener(new MouseListener() {
@Override
public void mouseReleased(MouseEvent e) {
questionPane.add(new JLabel("Test"));
System.out.println("Click event received.");
}
//other overrides hidden
}
Czy ktoś ma pomysł, co się dzieje za kulisami lub sposób dla mnie, aby elementy na panelu? Dzięki.
Próbka Śledzenie stosu (ten ślad nie jest wykonany przez tego samego kodu, jak wyżej, ale jest to ten sam błąd):
Exception occurred during event dispatching:
java.lang.NullPointerException
at com.intellij.uiDesigner.core.GridLayoutManager.addLayoutComponent(
GridLayoutManager.java:134)
at java.awt.Container.addImpl(Container.java:1074)
at java.awt.Container.add(Container.java:365)
at [MyProject].UI.View.DisplayView$1.actionPerformed(DisplayView.java:91)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
.....
Dla lepszej pomocy prędzej, POST [SSCCE] (http://sscce.org/). –
Może sprawdziłeś tworzenie niestandardowe? –