Hallo zusammen,
ich habe ein Problem mit dem JTabbedPane in Verbindung mit einem GUIHandler.
Bei Klick auf einen Button auf der JtabbedPane, bekomme ich eine NullPointerException.
Habt ihr eine Idee, woran das liegen könnte?
Anbei befindet sich der Beispielcode.
In diesem Sinne, vielen Dank im Voraus
-DjangoDieMango
Main:
GUI Klasse :
GUIHandler :
ich habe ein Problem mit dem JTabbedPane in Verbindung mit einem GUIHandler.
Bei Klick auf einen Button auf der JtabbedPane, bekomme ich eine NullPointerException.
Habt ihr eine Idee, woran das liegen könnte?
Anbei befindet sich der Beispielcode.
In diesem Sinne, vielen Dank im Voraus
-DjangoDieMango
Main:
Java:
package TabbedPaneTest;
import java.awt.EventQueue;
public class TabbedPaneTestMain {
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
GUI window = new GUI();
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
}
Java:
package TabbedPaneTest;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JTabbedPane;
import javax.swing.JButton;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.JRadioButton;
import javax.swing.JCheckBox;
public class GUI {
private JFrame frame;
private JTextField textField;
private JTabbedPane tabbedPane;
private JButton btnTest ;
private JPanel panel_1, panel_2;
private JCheckBox CheckBox_1;
public GUI() {
initialize();
}
private void initialize() {
frame = new JFrame();
frame.setBounds(100, 100, 715, 566);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(null);
tabbedPane = new JTabbedPane(JTabbedPane.TOP);
tabbedPane.setBounds(10, 11, 679, 506);
frame.getContentPane().add(tabbedPane);
panel_1 = new JPanel();
tabbedPane.addTab("Tab1", null, panel_1, null);
panel_1.setLayout(null);
btnTest = new JButton("New button");
btnTest.setBounds(275, 207, 89, 23);
btnTest.addActionListener(new GUIHandler());
btnTest.setActionCommand("btnTest");
panel_1.add(btnTest);
textField = new JTextField();
textField.setBounds(173, 176, 309, 20);
textField.setColumns(10);
panel_1.add(textField);
panel_2= new JPanel();
tabbedPane.addTab("Tab2", null, panel_2, null);
panel_2.setLayout(null);
CheckBox_1 = new JCheckBox("New check box");
CheckBox_1.setBounds(260, 202, 97, 23);
panel_2.add(CheckBox_1);
frame.setVisible(true);
}
public JTextField getTextField(){
return textField;
}
public JCheckBox getCheckbox(){
return CheckBox_1;
}
}
Java:
package TabbedPaneTest;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class GUIHandler implements ActionListener{
private GUI Ogui;
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
switch(e.getActionCommand()){
case "btnTest" :
System.out.println(Ogui.getTextField()); <== NULLPOINTEREXCEPTION
break;
}
}
}
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at TabbedPaneTest.GUIHandler.actionPerformed(GUIHandler.java:18)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
at TabbedPaneTest.GUIHandler.actionPerformed(GUIHandler.java:18)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)