# Problem mit jComboBox



## dimitrif (7. Aug 2007)

Hallo,

ich benutze NetBeans und mit diesem Programm habe ich eine Form erstellt, die ich nachträglich durch implementierte Datenbank Abfragen vervollständigen möchte, aber es geht nich, wi ich es vorstelle.

In  _ private void initComponents_ gibt es ein Eintrag:


```
jComboBox2.setModel(new javax.swing.DefaultComboBoxModel(new String[] {Name}));
```

Name ist eine public static String Variabel. Die bekommt einen Wert von MySQL Abfrage:


```
Name=rs.getString(2)+", "+rs.getString(1);
```

In diesem Zustand kann ich das benutzen, aber es ist nicht das, was ich will.

Ich will, dass meine Variabel *Name* ein Array wird.


```
public static String Name[];
public static void main(String args[]) {
         try{  
            Class.forName("com.mysql.jdbc.Driver");
            try {
                int i=0;
                Connection con = DriverManager.getConnection("jdbc:mysql://............................);
                Statement stmt = con.createStatement();
                ResultSet rs = stmt.executeQuery("SELECT fname,sname FROM pflege");
                while ( rs.next() ) 
                    {
                    Name[i]=rs.getString(2)+", "+rs.getString(1);
                    i=+1;
                    } 
                } 
            catch (SQLException ex) {
                ex.printStackTrace();
            }
......................................
```


Doch das geht nicht, weil ich dann eine Meldungbekomme:
java:436: non-static variable jComboBox2 cannot be referenced from a static context


Wie kann ich meine MySQL Abfrage jComboBox zuweisen?


Vielen Dank im Voraus


----------



## SlaterB (7. Aug 2007)

in deinen 19 Zeilen taucht keine 'jComboBox2' auf,
welche Zauberlösung erwartest du nun?

außer allgemeinen Hinweisen wie 'unter allem Umständen verhindern, dass dynamische Datenbank-Ergebnisse in statischen Variablen gespeichert werden'

und Variablen immer klein schreiben, auch statische,
es sei denn, es soll eine Konstante sein, dann ganz groß: NAME


----------



## dimitrif (7. Aug 2007)

SlaterB hat gesagt.:
			
		

> in deinen 19 Zeilen taucht keine 'jComboBox2' auf,
> welche Zauberlösung erwartest du nun?
> 
> außer allgemeinen Hinweisen wie 'unter allem Umständen verhindern, dass dynamische Datenbank-Ergebnisse in statischen Variablen gespeichert werden'
> ...




Hallo, vielen Dank für die Antwort.

Leider habe ich immer noch nicht kopiert, was meinst du. Ich will nur, dass meine Datenbankergebnisse in einer globalen Variabel gespeichert werden und dann könnte ich auf die zugreifen.

Da wo jComboBox2.setModel(new javax.swing.DefaultComboBoxModel(new String[] {})); auftaucht, kann man teoretisch auch sowas schreiben:

```
jComboBox2.setModel(new javax.swing.DefaultComboBoxModel(new String[] {"name1","name2","name3" usw.}));
```
Ich will es nur durch einen Array ersetzen und diese Array heißt *name*:

```
jComboBox2.setModel(new javax.swing.DefaultComboBoxModel(new String[] {name}));


Wie kann ich das erreichen?
```


----------



## L-ectron-X (7. Aug 2007)

jComboBox2.setModel(new javax.swing.DefaultComboBoxModel(name));


----------



## dimitrif (7. Aug 2007)

Danke,


 :lol: 


es funktioniert!!!!!!!!!!


----------

