3x jcombobox nacheinander füllen

Status
Nicht offen für weitere Antworten.

dercheffe

Aktives Mitglied
Hi,

ich hab ein Problem. Ich hab eine Gui entwickelt, welche auf einer Datenbank aufsetzt. Auf der Gui sind 3 Comboxen. Diese sollen gefüllt werden, abhängig je nach dem was in einer anderen Combobox steht.

Konkret, heißt das, ich habe eine Combobox Standort, eine Combobox Kennzeichen, eine Combobox Lage. An einem Standort befinden sich mehrere Lagen, welche ein oder mehrere Kennzeichen haben.
Wenn nun also ein Standort geählt wurde, sollen nur die Lagen angezeigt werden welche für diesen Standort in der Datenbank stehen. Ich hab es mit einem ActionListener probiert, aber jedesmal wenn nun die Gui initialisiert wird gibt es ne Nullpointer Exception, da ja noch kein Standort bzw keine Lage ausgewählt ist.
Wie kann ich das Problem lösen? ich hab keinen Plan.


Hier der Code der vom ActionListener aufgerufen wird:

Code:
private void getKennzeiche_Lage(){

		String location = location_Ort_jComboBox.getSelectedItem().toString();
		
		location_Lage_jCombobox.removeAllItems();
		ArrayList lagen =new ArrayList();
		dbconn.createStatement();
		try {
			
			lagen = dbconn.getLage(location);
		} catch (SQLException e) {
			this.showError(e.getMessage());
		}
		
		ListIterator itlage = lagen.listIterator(lagen.size());					//Lagen Box füllen
		while(itlage.hasPrevious())	{
			location_Lage_jCombobox.addItem(itlage.previous());
		}
		
		//------------------------ Kennzeichen ------------------------------

		location_Kennzeichen_jComboBox.removeAllItems();
		
		ArrayList kennzeichen = new ArrayList();
		dbconn.createStatement();
		try {
			
			kennzeichen = dbconn.getKennzeichen(location,location_Lage_jCombobox.getSelectedItem().toString() );
		} catch (SQLException e) {
			this.showError(e.getMessage());
		}
		
		ListIterator itKennzeichen = kennzeichen.listIterator(kennzeichen.size());
		while(itKennzeichen.hasPrevious())	{
			location_Kennzeichen_jComboBox.addItem(itKennzeichen.previous());
		}
		String lage = location_Lage_jCombobox.getSelectedItem().toString().trim();
		String kenn = location_Kennzeichen_jComboBox.getSelectedItem().toString().trim();
		this.getLfdnr_Standort(location, lage, kenn);

	
	}
 
S

SlaterB

Gast
> jedesmal wenn nun die Gui initialisiert wird gibt es ne Nullpointer Exception, da ja noch kein Standort bzw keine Lage ausgewählt ist.

diese besondere Situation abfangen?
oder einen Standardwert setzen?

-------

was soll dein Code ausdrücken? ist das der Code, wo die NullPointerException auftritt?
welche Zeile

was soll passieren an Stelle der NullPointerException?
 

dercheffe

Aktives Mitglied
jap, der error wird hier geschmissen:
Code:
kennzeichen = dbconn.getKennzeichen(location,location_Lage_jCombobox.getSelectedItem().toString() );

und zwar jedesmal wenn ich einen ort auswähle, also die methode aufgerufen wird.

anstelle der nullpointer sollen doch bitte einfach nur die comboxen mit den daten aus der datenbank gefüllt werden.

hab mich übrigens getäuscht, der fehler tritt nicht beim initialisern der datenbank auf, sondern wenn ich einen neuen ort wähle. wenn der ort gewählt wurde, wird die methode von oben aufgerufen, um die beiden comboxen zu aktuallisieren.
 
S

SlaterB

Gast
welcher Wert ist denn in location_Lage_jCombobox gerade ausgewählt?
wird dies JComboBox nicht gerade erst vorher in Zeile 16-19 gefüllt?

oder ist das eine andere Code-Stelle?

wenn du ein komplettes Programm mit Main, JFrame, SelectionListner, ausführbar usw. posten würdest,
könnte ich genauer nachschauen, ob man die JComboBox dazu bringen kann, sofort etwas ausgewählt zu haben,


allgemein ist das bei Swing aber immer so eine Sache,
das kann auch z.T. verzögert geschehen,

daher schlage ich vor,
bei getSelectedItem() == null
das 0.te Element der Items der JComboBox zu wählen,
ist doch nicht weiter schlimm, sowas einzubauen?
 

dercheffe

Aktives Mitglied
in loactaion_Lage_jCombobox steht ein String welcher für die Datenbankabfrage gebraucht wird und ja sie wird gerade erst oben gefüllt, da die lage und das kennzeichen von dem ort, der gerade gewählt wurde abhängig ist, ändert sich also der ort, so müssen sich die lagen ändern. ändert sich die lage, was ja nach einem ortswechsel passiert, so ändern sich die kenzeichen.

Ein beispiel:
es gibt den ort würtzburg
dieser hat die lagen:
stein-fels,
marienburg,
wüste

die lage stein fels hat die kennzeichen:
dwd
keine
minus

die lage marienburg hat die kennzeichen:
dwd
plus

usw.

das komplette programm kann ich leider nicht posten, des sind mehrer tausend zeilen und du bräuchtest zugang zu der datenbank, die erreicht man aber nur per vpn :(

aber wenn du sagst, dass des bei swing zeitversetzt passieren kann, würde es dann helfen den thread schlafen zu legen?
 
S

SlaterB

Gast
wenn du weißt, dass nach der Änderung des Ortes in 'würtzburg'
(wo liegt das denn) die Lagen 'stein-fels, marienburg, wüste' zur Auswahl stehen,
dann nimm doch einfach 'stein-fels'?

wo ist das Problem? wird in der JComboBox vielleicht noch nicht selektiert sein,
aber doch hoffentlich schon im Vector der enthaltenen Elemente zu finden sein,
von diesen einfach das erste nehmen, dieses würde ja in 0.3 Sekunden sowieso ausgewählt werden

---------

das mit dem zeitversetzt und warten würde ich ohne Testen aber erstmal nicht verfolgen,
manchmal rede ich da auch wirres Zeug ;)

wie gesagt: da braucht es keine 1000 Zeilen,
sondern ein simples JFrame mit 2-3 ComboBoxen und den zugehörigen Listenern, 50 Zeilen vielleicht

DB usw. braucht man da überhaupt nicht, es geht doch nur um den Zugriff auf das selectedItem()
 

dercheffe

Aktives Mitglied
danke SlaterB für deine Hilfe. Ich habs hingbekommen. Ich habe die Methode in 2 aufgeteilt. Da ich vermutete, dass beim füllen der Kennzeichen Combobox jedesmal der ein ItemChanged Event ausgelöst wurde habe ich die Methode itemStateChanged geändert.
Hier wie es nun ist:

Code:
public void itemStateChanged(ItemEvent arg0) {
		if((arg0.getSource()==location_Lage_jCombobox) ){
		if(location_Lage_jCombobox.getSelectedObjects().length>0){
			this.getKennzeichen();
				
			}	
		}
	}

Nochmals Danke für die Hilfe
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
E Meine JCombobox werte an ohne selectiert zu haben Java Basics - Anfänger-Themen 6
D Probleme mit dem Windowbuilder und JComboBox Java Basics - Anfänger-Themen 2
J Selektiertes Element von jComboBox zwischenspeichern und wieder einsetzen Java Basics - Anfänger-Themen 0
C Erste Schritte JComboBox Einträge auf Duplikat prüfen Java Basics - Anfänger-Themen 4
A Mit JComboBox Ergebnis einen Integer aus einer anderen Klasse aufrufen. Java Basics - Anfänger-Themen 2
M JComboBox ersten Eintrag leerlassen bzw. Platzhalter Java Basics - Anfänger-Themen 1
Tommy135 Klassen jComboBox macht nicht was sie soll Java Basics - Anfänger-Themen 4
S ArrayListe in einer JComboBox anzeigen Java Basics - Anfänger-Themen 10
H JComboBox wird nicht angezeigt Java Basics - Anfänger-Themen 3
M JComboBox feste double Werte zu ordnen Java Basics - Anfänger-Themen 8
T Einträge in jComboBox aus Liste übernehmen Java Basics - Anfänger-Themen 1
T Auslesen mehrerer jComboBox (-en) Java Basics - Anfänger-Themen 4
H JCombobox Java Basics - Anfänger-Themen 1
D JComboBox duplizieren Java Basics - Anfänger-Themen 2
T jComboBox Java Basics - Anfänger-Themen 9
GadgetSofa jComboBox mit dem Button verbinden. Aber wie?? Java Basics - Anfänger-Themen 4
A GUI Absturz nach 3x benutzen einer JComboBox Java Basics - Anfänger-Themen 11
S Erste Schritte JComboBox Java Basics - Anfänger-Themen 1
S JCombobox und JButton verknüpfen Java Basics - Anfänger-Themen 6
S JComboBox automatisch füllen Java Basics - Anfänger-Themen 3
C JComboBox "Hilfstext" anzeigen Java Basics - Anfänger-Themen 11
T Datentypen Jcombobox Array Java Basics - Anfänger-Themen 1
J JComboBox in andere Klasse Java Basics - Anfänger-Themen 2
S Variablen auslesen beim JCombobox Java Basics - Anfänger-Themen 0
K JCombobox Eclipse Java Basics - Anfänger-Themen 7
D JComboBox erzeugen Java Basics - Anfänger-Themen 1
T JComboBox Java Basics - Anfänger-Themen 3
B ArrayLists in JCombobox Java Basics - Anfänger-Themen 10
M JComboBox und ItemListener/ItemEvent Problem Java Basics - Anfänger-Themen 3
M JComboBox Auswahl Java Basics - Anfänger-Themen 10
N Compiler-Fehler JComboBox DefaultListCellRenderer Java Basics - Anfänger-Themen 2
J JComboBox - Auswahl auslesen Java Basics - Anfänger-Themen 2
J jcombobox.getSelectedItem - nullpointerexception Java Basics - Anfänger-Themen 3
C JComboBox setSelectedItem(Object) Problem Java Basics - Anfänger-Themen 5
M JComboBox Obergrenzen/Untergrenze festlegen? Java Basics - Anfänger-Themen 5
B JComboBox(editable) Java Basics - Anfänger-Themen 6
K JComboBox hat volle Höhe uber das gesamte JPane, warum? Java Basics - Anfänger-Themen 2
S JComboBox mit ArrayList füllen Java Basics - Anfänger-Themen 7
C Ausgewähltes Element einer JCombobox in JTextField Java Basics - Anfänger-Themen 3
S JComboBox füllen Java Basics - Anfänger-Themen 9
C JComboBox Java Basics - Anfänger-Themen 9
R Auf auswahl in ner JComboBox reagieren Java Basics - Anfänger-Themen 3
T Frage zu JComboBox Java Basics - Anfänger-Themen 6
G JComboBox wird nicht gezeichnet Java Basics - Anfänger-Themen 3
N JComboBox mit Dateinamen befüllen Java Basics - Anfänger-Themen 7
M JComboBox => Item String => Color Java Basics - Anfänger-Themen 2
StrikeTom Editable JComboBox + enter Wie??? Java Basics - Anfänger-Themen 3
J JComboBox Listener Java Basics - Anfänger-Themen 6
F Werte aus JComboBox auslesen und Zahlen zuordnen Java Basics - Anfänger-Themen 5
S JComboBox Platzhalter Java Basics - Anfänger-Themen 7
J jComboBox auf default setzen wie? Java Basics - Anfänger-Themen 3
J daten über jComboBox ausgeben wie? Java Basics - Anfänger-Themen 2
S Vector -> String JComboBox Java Basics - Anfänger-Themen 11
E JComboBox Java Basics - Anfänger-Themen 4
J jComboBox.getSelectedIndex() Java Basics - Anfänger-Themen 8
J Funktion Auslösen über JComboBox Java Basics - Anfänger-Themen 2
T JComboBox klappt nur ein- bis zweimal auf Java Basics - Anfänger-Themen 30
S Kein Event bei Click auf JComboBox Java Basics - Anfänger-Themen 4
Developer_X JComboBox getSelectedFilè??? Java Basics - Anfänger-Themen 4
T Daten eines Ordners in JCombobox anzeigen Java Basics - Anfänger-Themen 5
M Einträge in JComboBox farblich hinterlegen? Java Basics - Anfänger-Themen 2
6 Dritte JComboBox in Abhaengigkeit von zwei vorherigen Java Basics - Anfänger-Themen 4
G 2. JComboBox in Abhängigkeit der 1. JCombobox füllen Java Basics - Anfänger-Themen 2
S Problem mit JComboBox Java Basics - Anfänger-Themen 9
H jcombobox mit nur einem Item Java Basics - Anfänger-Themen 7
G Inhalt einer JComboBox wechseln Java Basics - Anfänger-Themen 5
G Problem mit JComboBox Java Basics - Anfänger-Themen 15
G JComboBox Strukturiert anzeigen Java Basics - Anfänger-Themen 6
Schandro Hotkeys bei JComboBox abschalten Java Basics - Anfänger-Themen 3
G JComboBox soll beim Öffnen eine andere JCB öffnen Java Basics - Anfänger-Themen 2
P Hilfe für JComboBox, bmp einbinden/bestimmte punkte auf bmp Java Basics - Anfänger-Themen 3
G JComboBox - BasicComboPopup Java Basics - Anfänger-Themen 4
S Inhalt der JComboBox vergrößtert die JCB ? Java Basics - Anfänger-Themen 2
B Werte aus einer JCombobox in eine Liste Java Basics - Anfänger-Themen 16
mwildam JComboBox FocusGained feuert nicht wenn editable Java Basics - Anfänger-Themen 4
F ComboBox im Vektor auslesen, Vektor<JComboBox> Java Basics - Anfänger-Themen 6
S Jcombobox und 2maliges anzeigen wegen ItemStateChanged? Java Basics - Anfänger-Themen 3
W setModel feuert ActionEvent bei JComboBox Java Basics - Anfänger-Themen 2
G Frage zu JComboBox Java Basics - Anfänger-Themen 2
W Actionlistener oder Itemlistener bei JCombobox ? Java Basics - Anfänger-Themen 4
G JComboBox Java Basics - Anfänger-Themen 7
G JComboBox macht Probleme Java Basics - Anfänger-Themen 7
G JComboBox alphabetisch sortieren Java Basics - Anfänger-Themen 2
D Locale zur Laufzeit über JComboBox laden? Java Basics - Anfänger-Themen 17
G JComboBox um eine Methode erweitern Java Basics - Anfänger-Themen 2
G jcombobox deaktivieren Java Basics - Anfänger-Themen 4
M Werte aus Jcombobox sollten als int-Werte zurück gegeben . Java Basics - Anfänger-Themen 7
D Items in JComboBox überprüfen Java Basics - Anfänger-Themen 3
G JComboBox zweckentfremden ? Java Basics - Anfänger-Themen 5
N JCombobox Pfeil nach unten bild auf linke seite, geht das? Java Basics - Anfänger-Themen 8
T JComboBox Problem Java Basics - Anfänger-Themen 4
D JComboBox titel Java Basics - Anfänger-Themen 16
M füllen JComboBox funktioniert nicht Java Basics - Anfänger-Themen 11
J JCombobox Item auswählen Java Basics - Anfänger-Themen 13
A Text einer JComboBox während der Laufzeit ändern ? Java Basics - Anfänger-Themen 4
J Inhalt der JComboBox variable Java Basics - Anfänger-Themen 2
O JComboBox Item soll sich als String speichern Java Basics - Anfänger-Themen 5
D JComboBox ohne ItemListener Java Basics - Anfänger-Themen 18
B unvollständige Anzeige von JComboBox Werten Java Basics - Anfänger-Themen 5
G JComboBox gibt SelectedItem immer doppelt aus Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben