mehrere Panel und Actionlistener + db

sence

Bekanntes Mitglied
Hallo Forum,

ich will mir ein kleines GUI Prog schreiben, welches über eine Menüleiste verfügt.
Diese Menüleiste soll mehrere MenuItems haben. Wenn man nun eins anklickt, soll das aktuelle Panel, gegen das, welches hinter dem MenuItem steckt angezeigt werden.

Es klappt. Jedoch nicht mit dem ActionListener welcher als klasse in dem Modul definiert ist.
Ich bekomme jedesmal einen Event fehler oO

anbei der Code


HauptKlasse:

Java:
package main;

import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.WindowConstants;

import kunden.Search;



public class Window extends JFrame implements ActionListener {
	private static final long serialVersionUID = -3592540922963019935L;

	// Menüleiste (1)
	JMenuBar menuBar = new JMenuBar();
	// Menüleiste - Menüs (2)
	JMenu Programm = new JMenu("Programm");
	JMenu Kunden = new JMenu("Kunden");
	// Menüs - Items (3)
	JMenuItem menuItem_beenden = new JMenuItem("Beenden");
	JMenuItem menuItem_KundenSuchen = new JMenuItem("Suchen");
	
	

	// Konstructor
	Window(String titel) {
		super(titel);
		// Menüleiste START
		menuBar.add(Programm);
		menuBar.add(Kunden);
		
		Programm.add(menuItem_beenden);
		Kunden.add(menuItem_KundenSuchen);
		
		
		menuItem_beenden.addActionListener(this);
		menuItem_beenden.setActionCommand("EXIT");
		
		menuItem_KundenSuchen.addActionListener(this);
		menuItem_KundenSuchen.setActionCommand("KUNDENSUCHEN");
		
		add(menuBar);
	    setJMenuBar(menuBar);
	    // Menüleiste ENDE
	    this.setLayout(new FlowLayout());
	    setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
	    
	}
	
	// Actionlistner
	public void actionPerformed(ActionEvent arg0) {
		String cmd = arg0.getActionCommand();
		if(cmd.equals("EXIT")) {
			System.exit(0);
		}
		
		if(cmd.equals("KUNDENSUCHEN")) {
			Search S = new Search();
			
			this.setContentPane(S.Fram1);
			this.setVisible(true);
			
		
		}
	}
	
	public static void main(String[] args) {
		Window programm = new Window("Warenwirtschaft");
		programm.setVisible(true);
		programm.pack();
		programm.setSize(1000,700);

	}


}

dann das 2. Panel

Java:
package kunden;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.ResultSet;
import java.sql.SQLException;

import javax.swing.JButton;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class Search  {

	
	public JPanel Fram1 = new JPanel();
	JTextField TF = new JTextField();	
	JButton b1 = new JButton("Suchen");
	
	public Search() {
		
		TF.setText("Suchbegriff Eingeben");
		Fram1.add(TF);
		
		b1.addActionListener(new actionLauscher());
		b1.setActionCommand("KDSEARCH");
		
		Fram1.add(b1);
	}
	
	class actionLauscher implements ActionListener {		
		public void actionPerformed(ActionEvent arg0) {
			String cmd = arg0.getActionCommand();
			
			if(cmd.equals("KDSEARCH")) {
				System.out.println("Search DB Aktiv!");
				sql.database DB = new sql.database();
				ResultSet rs = null;
				rs = DB.askDB("SELECT * FROM Kunden");
				
				try {
					int max_db_entry = rs.getMetaData().getColumnCount();	
					while(rs.next()) {
						for(int i = 1; i <= max_db_entry; i++) {
							System.out.println(i + ":" + rs.getString(i) );
												
						}
					}
				} catch (SQLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}				
		} // ende Event1		
	} // ende Methode ActionPerformes
	} // ende Class Lauscher

		
	}

und dann nen SQL Connector:

Java:
package dbtest;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class database {
	
	  
	String URL          = "sqldbString";
    String benutzername = "user";
    String passwort     = "pw";
    
    Statement  befehl     = null;
    Connection verbindung = null;

    public ResultSet askDB(String SearchString) {
   
    try  {
       Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    } 
    catch (Exception e)  {
       System.err.println(" JDBC/ODBC-Treiber konnte nicht geladen werden.");
       
    }


    try  {
       verbindung = DriverManager.getConnection (
                      URL,
                      benutzername,
                      passwort);
       befehl = verbindung.createStatement();
    } 
    catch (Exception e)  { System.err.println(" Verbindung zu " + URL  + " konnte nicht hergestellt werden");    }
    
    
    try {
    	return befehl.executeQuery(SearchString);    	
    }catch(Exception e0) { }
	return null; 
  }
	

}

Der Fehler beim auslösen des suchbuttons im 2. Panel:

Java:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
	at kunden.Search$actionLauscher.actionPerformed(Search.java:41)
	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.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)

Vielen herzlichen Dank!!
 
D

drpol

Gast
Hi,

da der fehler in Search.java Zeile 41 auftritt:
Java:
int max_db_entry = rs.getMetaData().getColumnCount();
funktioniert dein ActionListener.
Jedoch schlägt anscheinend deine Abfrage fehl.

database.jave scheint hier ein null zurück zu geben, mich würde mal interessieren ob deine query eine exception wirft, mach mal ein StackTrace in den catch block rein bitte.
Java:
try 
{
     return befehl.executeQuery(SearchString);       
}
catch(Exception e0) 
{ 
     e0.printStackTrace();
}
return null; 
  }
 

sence

Bekanntes Mitglied
Hey, hab den Fehler gefunden.

Der Problem war, dass ich mir direkt den ResultSet zurückgeben gelassen habe, anstatt nur das Ergebnis von return an den Aufruf zurück zugeben, wo ich damm mit dem RS warte.

Danke trotzdem !
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Über mehrere Panel zeichnen AWT, Swing, JavaFX & SWT 2
M effizient mehrere BufferedImage in eines schreiben AWT, Swing, JavaFX & SWT 6
T Swing Mehrere Ausgaben in JTextArea AWT, Swing, JavaFX & SWT 2
H Mehrere Panels auf JFrame AWT, Swing, JavaFX & SWT 8
S Mehrere Tabellen Zellen gleichzeitig färben AWT, Swing, JavaFX & SWT 5
Apfelbaum2005 Swing JFrame mehrere JPanels mit unterschiedlichen Formen hinzufügen AWT, Swing, JavaFX & SWT 1
K JavaFX unterschiedliche (mehrere Fenster) in seperater Main Methode AWT, Swing, JavaFX & SWT 26
I Scene Builder - mehrere Seiten AWT, Swing, JavaFX & SWT 6
P Swing Mehrere JLabels mit ImageIcon in JPanel lesen AWT, Swing, JavaFX & SWT 1
schoel27 Mehrere JButtons sollen das gleiche Event auslösen AWT, Swing, JavaFX & SWT 2
Z GUI Forms - Mehrere Fenster in einem Projekt AWT, Swing, JavaFX & SWT 18
M mehrere jTextField untereinander AWT, Swing, JavaFX & SWT 1
N Bilder auf Button einfügen und mehrmals ändern (ein Button, mehrere ActionListener) AWT, Swing, JavaFX & SWT 2
B Swing Sudoku: Laden / Speichern von Zahlen aus/in mehrere JTextFields aus/in eine(r) Textdatei AWT, Swing, JavaFX & SWT 9
M JavaFX JavaFX in mehrere Controller AWT, Swing, JavaFX & SWT 21
R mehrere buttons mit forschleife kreieren und individuell bearbeiten AWT, Swing, JavaFX & SWT 1
N JavaFX 1 Listener für mehrere ChoiceBoxen AWT, Swing, JavaFX & SWT 3
N Textdatei GUI, Text in Textarea anzeigen mehrere Zeilen AWT, Swing, JavaFX & SWT 1
temi JavaFX Mehrere Views mit Stage.setScene() oder mit Scene.setRoot()? AWT, Swing, JavaFX & SWT 7
P Swing Mehrere JPanels auf ein JFrame hinzufügen? AWT, Swing, JavaFX & SWT 2
G Swing Tetraeder - mehrere Punkte verbinden? - Ansätze gesucht AWT, Swing, JavaFX & SWT 2
K JavaFX in mehrere Controller aufteilen AWT, Swing, JavaFX & SWT 29
K JavaFX in mehrere Controller aufteilen AWT, Swing, JavaFX & SWT 0
stroggi Swing Mehrere transparentes Objekte (Grafiken) über einem Bild (JLabel) darstellen AWT, Swing, JavaFX & SWT 4
K Mehrere Linien zeichnen AWT, Swing, JavaFX & SWT 8
J JavaFX - mehrere Views, Model durchreichen AWT, Swing, JavaFX & SWT 10
it_is_all Swing Mehrere JComboBoxen - wie die versch. Boxen mit ItemStateChange auslesen? AWT, Swing, JavaFX & SWT 3
M Swing Mehrere Textfelder mit ScrollBars - Größe der Felder AWT, Swing, JavaFX & SWT 0
W JavaFX Mehrere Klassen in ein TableView AWT, Swing, JavaFX & SWT 6
F AWT mehrere Panels in einem Frame AWT, Swing, JavaFX & SWT 17
L JavaFX Mehrere JavaFX Szenen mit einem Menü AWT, Swing, JavaFX & SWT 1
D Java FXML mehrere Fenster AWT, Swing, JavaFX & SWT 4
F JavaFX Mehrere Stages "managen" AWT, Swing, JavaFX & SWT 2
r4w Changelistener auf mehrere Textfelder AWT, Swing, JavaFX & SWT 5
H Swing + Paint: Mehrere Objekte zeichnen lassen AWT, Swing, JavaFX & SWT 3
S Swing Mehrere Modal-Dialoge übereinander AWT, Swing, JavaFX & SWT 5
T 2D-Grafik JFreeChart mehrere Y-Achsen AWT, Swing, JavaFX & SWT 2
C JavaFX mehrere Kreise nach Eingabeprozess ausgeben AWT, Swing, JavaFX & SWT 2
Thallius Swing Mehrere tausend "Panels" erstellen AWT, Swing, JavaFX & SWT 3
C Java FX Warnmeldung: Mehrere Fonts gehören derselben Familie und Stil AWT, Swing, JavaFX & SWT 2
J Mehrere JInternalFrame; GetValues AWT, Swing, JavaFX & SWT 1
JG12111989 mehrere Polyline-Objekte zeichnen AWT, Swing, JavaFX & SWT 3
LexeB4F JTable mehrere Zelle selektieren und inhalte Löschen.. Ideen gesucht AWT, Swing, JavaFX & SWT 1
V Tastatur KeyListener für mehrere Buttons AWT, Swing, JavaFX & SWT 1
K JavaFX Mehrere Cell Editors in einem TreeView Item AWT, Swing, JavaFX & SWT 2
KaffeeFan mehrere JTextField durchlaufen AWT, Swing, JavaFX & SWT 4
J Java -8 Action Listener für mehrere Buttons AWT, Swing, JavaFX & SWT 9
T Dynamisch mehrere Checkboxen anlegen AWT, Swing, JavaFX & SWT 2
G JavaFX Menü und mehrere Scenes AWT, Swing, JavaFX & SWT 16
R Swing Mehrere JTextFields mit einem Document Listener AWT, Swing, JavaFX & SWT 2
D Mehrere RadiButtons auswählar AWT, Swing, JavaFX & SWT 3
P Swing JTable mehrere Zeilen markieren AWT, Swing, JavaFX & SWT 1
M Mehrere Jpanel in einem JScrollPane (Layout) AWT, Swing, JavaFX & SWT 2
T JavaFX FXMLController für mehrere FXML? AWT, Swing, JavaFX & SWT 7
G mehrere Action-Abfolgen erfassen AWT, Swing, JavaFX & SWT 6
elischa JFrame über mehrere JPanel und Listener AWT, Swing, JavaFX & SWT 17
X Swing JPanel mehrere Ebenen zeichnen AWT, Swing, JavaFX & SWT 13
J Mehrere Hyperlinks "stilvoll" darstellen. AWT, Swing, JavaFX & SWT 1
G Mehrere Strings um Kreis zeichnen und positionieren AWT, Swing, JavaFX & SWT 0
S JavaFX Mehrere TreeTableView's synchron scrollen AWT, Swing, JavaFX & SWT 0
U Mehrere Oberflächeninstanzen seperat schließen AWT, Swing, JavaFX & SWT 5
J Rahmen um mehrere GUI Einzelteile AWT, Swing, JavaFX & SWT 2
S Layouts, mehrere Buttons nebeneinander AWT, Swing, JavaFX & SWT 2
M Mehrere Fenster innerhalb einer Application AWT, Swing, JavaFX & SWT 3
M ActionListener für mehrere Klassen AWT, Swing, JavaFX & SWT 4
T [LWJGL] mehrere Displays? AWT, Swing, JavaFX & SWT 19
SexyPenny90 Mehrere Fenster AWT, Swing, JavaFX & SWT 2
M Handling 1 Fenster mehrere Panels AWT, Swing, JavaFX & SWT 2
Y Mehrere JSlider verlinken AWT, Swing, JavaFX & SWT 6
Java-Insel LayoutManager Ein GridBagLayout-Objekt für mehrere Panels? AWT, Swing, JavaFX & SWT 2
O Swing JLabel mehrere Zeilen AWT, Swing, JavaFX & SWT 2
P mehrere Rectangles per JButton AWT, Swing, JavaFX & SWT 9
B JToolBar dynamisch auf mehrere Zeilen erweitern AWT, Swing, JavaFX & SWT 2
Jats Zeichen auf mehrere JPanels AWT, Swing, JavaFX & SWT 7
G Mehrere Probleme mit Java's GUI AWT, Swing, JavaFX & SWT 6
G Mehrere Layoutprobleme AWT, Swing, JavaFX & SWT 2
Kenan89 JTable mehrere ListSelections AWT, Swing, JavaFX & SWT 2
M TextArea über mehrere Zeilen - wie Zeileanzahl abfragen? AWT, Swing, JavaFX & SWT 5
J Swing JDialog blokiert mehrere JFrames - soll aber nur den aufrufenden blockieren AWT, Swing, JavaFX & SWT 4
A mehrere Zeilen in GUi ausgeben AWT, Swing, JavaFX & SWT 2
N Mehrere Tasks nacheinander ausführen AWT, Swing, JavaFX & SWT 7
C SWT Mehrere Bilder in GUI laden AWT, Swing, JavaFX & SWT 5
propra Mehrere Objekte gleichzeitig verschieben AWT, Swing, JavaFX & SWT 7
M 2D-Grafik Mehrere Linien (nacheinander) übereinander Zeichnen AWT, Swing, JavaFX & SWT 6
M Mehrere JPanel nacheinander?! AWT, Swing, JavaFX & SWT 11
Furtano AWT mehrere Bilder in einen Frame zeichnen + Layout Manager AWT, Swing, JavaFX & SWT 10
K SWT Mehrere Einträge ins Clipboard legen AWT, Swing, JavaFX & SWT 2
C Swing Ein JFrame mehrere Ansichten AWT, Swing, JavaFX & SWT 8
C Swing Mehrere JSlider sollen aufeinander reagieren AWT, Swing, JavaFX & SWT 4
GUI-Programmer JFilechooser, mehrere Datein selektieren und Reihenfolge (2) AWT, Swing, JavaFX & SWT 8
S Mehrere JLists - Wie kennzeichnen? AWT, Swing, JavaFX & SWT 2
S Swing MVC Ein JFrame, mehrere JPanels AWT, Swing, JavaFX & SWT 6
J Mehrere JRadioButtons, aber nur 1 darf ausgewählt sein AWT, Swing, JavaFX & SWT 4
L Swing Mehrere Button die selbe Größe AWT, Swing, JavaFX & SWT 4
B AWT mehrere Fenster schließen AWT, Swing, JavaFX & SWT 8
I Wie mehrere JComboBoxen in Abhängigkeit einer anderen Box ändern? AWT, Swing, JavaFX & SWT 8
G mehrere JPanel in ein (vertikales) JScrollPane AWT, Swing, JavaFX & SWT 8
F Swing Mehrere Textfelder in Scrollpane einfügen und dann zum Scrollen bringen? AWT, Swing, JavaFX & SWT 4
GianaSisters Swing jTable - Feldtext soll mehrere Zeilen haben AWT, Swing, JavaFX & SWT 3
K JFileChooser mehrere Dateien markieren ohne STRG AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen

Neue Themen


Oben