JBomboBox mal voll mal leer

Status
Nicht offen für weitere Antworten.

genji3000

Mitglied
Hallo,

ich habe eine JCombobox, die ich mit Tabellennammen aus einer Datenbank füllen will.
Das komische ist, dass manchmal die Daten drinstehen und manchmal nicht.

Ich benutze JDK 1.5.0-06
Dazu habe ich ein Workaround gefunden, indem es heißt das man besser Objecte als Strings benutzen soll, weil es sonst zu Schwiwrigkeiten kommen kann.
Nun habe ich beide Möglichkeiten ausprobiert, bekomme aber immer noch mal eine schön gefüllte JComboBox und manchmal eine leere.

Über eine Lösungsmöglichkeit würde ich mich sehr freuen. :D

Code:
private Object makeObj(final String item){
        	return new Object() { public String toString() {return item;}};
        }
        
        //Methode für Tabellen
        public void getTabelle() throws SQLException{
        	while(resultsetTabelle.next()){
        		//jComboBox1.addItem(makeObj(resultsetTabelle.getString("TABLE_NAME")));
        		jComboBox1.addItem(resultsetTabelle.getObject("TABLE_NAME"));
        	}
        }
 

André Uhres

Top Contributor
genji3000 hat gesagt.:
..Das komische ist, dass manchmal die Daten drinstehen und manchmal nicht..
Versuch's mal so:
Code:
   public void getTabelle() throws SQLException{
        resultsetTabelle.beforeFirst();//<------------- einfügen
        while(resultsetTabelle.next()){
          ...
        }
    }
 

thE_29

Top Contributor
Wenn nichts in der ComboBox drinnen steht, gibts dann ne SQLException vielleicht??

Lässt du dir die eh anzeigen oder "verschluckst" du die irgendwann?


Desweiteren diese String to object Methode kannst dir ruig sparen!

Jede Klasse ist erbt von Object, dh, jede Klasse ist eigentlich sowieso eine instanz von Object!
 

genji3000

Mitglied
Danke für die Tipps.
Es hat sich aber leider nichts geändert.
Bei jedem 2. oder 3. mal ist die Combobox leer.
Eine SQL-Exception wird nicht angezeigt.

Kann das an JDK 1.5 liegen?
 

thE_29

Top Contributor
Mach mal

Code:
public void getTabelle() throws SQLException{
           while(resultsetTabelle.next()){
              String tmp = resultsetTabelle.getString("TABLE_NAME");
              System.out.println("Element: " + tmp);
              jComboBox1.addItem(tmp);
           }
        }

Und schau ob er dir immer was ausgibt!
 

genji3000

Mitglied
Danke für den Tipp.
Leider immer noch das gleiche.
Auf der Konsole gibt er immer die Elemente aus in der Combobox leider nicht immer.
Irgendwie scheint die Combobox manchmal keine Daten zu bekommen.

In der Doku heißt es:
Warning: Focus and keyboard navigation problems may arise if you add duplicate String objects. A workaround is to add new objects instead of String objects and make sure that the toString() method is defined. For example:
Code:
   comboBox.addItem(makeObj("Item 1"));
   comboBox.addItem(makeObj("Item 1"));
   ...
   private Object makeObj(final String item)  {
     return new Object() { public String toString() { return item; } };
   }

Aber das ja auch nicht funktioniert. :bahnhof:
 

thE_29

Top Contributor
Naja, das hat was damit zum tun, das man gleiche Elemente adden will und dann mit Tastatur navigiert!

Prob mal nach dem adden ein

JComboBox.validate();
JComboBox.repaint();

Aber mit deiner JComboBox instanz!
 

genji3000

Mitglied
Danke.
Funktioniert leider auch nicht.
Im Moment wird nur noch eine leere COmbobox angezeigt.
Muss ich eigentlich ein CVombobox Modell auswählen?
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
A AWT Beim (mehrmaligen) Screenshot machen läuft der Speicher voll AWT, Swing, JavaFX & SWT 2
V JList ist leer -Model ist voll. Ja, ne is klaaa. AWT, Swing, JavaFX & SWT 8
_user_q [JavaFX] Spinner so einstellen, dass er nicht leer bleiben darf? AWT, Swing, JavaFX & SWT 6
G JavaFX Scene ausdrucken nicht möglich, Seite leer AWT, Swing, JavaFX & SWT 5
V JavaFX Bild leer und keine Fehlermeldung AWT, Swing, JavaFX & SWT 21
RedEagle Swing JTextArea ist leer AWT, Swing, JavaFX & SWT 13
D JavaFX TableView bleibt leer. AWT, Swing, JavaFX & SWT 8
Z Fenster leer, wenn ich ein JTextField erzeuge AWT, Swing, JavaFX & SWT 3
S JList ist leer, aber DefaultListModel hat die Daten? AWT, Swing, JavaFX & SWT 9
M JTable: Prüfen ob Zelle leer ist AWT, Swing, JavaFX & SWT 5
llabusch Prüfen ob JMenu leer ist & löschen AWT, Swing, JavaFX & SWT 1
B Variable ist leer / Scope von Variablen AWT, Swing, JavaFX & SWT 2
M Fenster mit ProgressMonitor immer leer AWT, Swing, JavaFX & SWT 23
S Swing JComboBox mit MutableComboBoxModel ist leer nach addItem AWT, Swing, JavaFX & SWT 4
1 JFrame bleibt leer, keine Ahnung warum AWT, Swing, JavaFX & SWT 7
A Swing JTable bleibt leer AWT, Swing, JavaFX & SWT 2
A SWT Composite bleibt leer AWT, Swing, JavaFX & SWT 7
A Swing JTextField - vorausgefüllt bei klick leer AWT, Swing, JavaFX & SWT 54
S schauen ob ein string leer ist AWT, Swing, JavaFX & SWT 4
G JTextField leer AWT, Swing, JavaFX & SWT 2
S statusleiste bleibt leer und gui hängt AWT, Swing, JavaFX & SWT 3
B JFrame nach Start leer, größer ziehen zeigt Inhalt an AWT, Swing, JavaFX & SWT 2
Paule JFrame bleibt leer, wieso? AWT, Swing, JavaFX & SWT 2
T Klassenobjekte in paintComponent()/ paint() leer AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen


Oben