ComboBoxDaten in JTable anzeigen

Shizzl_chrizzl

Erfahrenes Mitglied
Hi leude ich hab foglendes Problem, also ich hab ne 2 ComboBoxen und eine tabelle die ihre Daten teilweise aus ner DB bekommt außer 2 Spalten die sollen ihr Daten aus den besagten ComboBoxen bekommen. Mein Problem ist nun das ich nicht weis wie ich die Spalten mit den Comboboxen verknüpfe bzw. wie das Table upgedatet wird.

Code von der Comboboxenklasse die ihr daten aus ner property file bekommen , die 2. is abhängig von der ersten.

Code:
  comboEqui.addItem(" ");
        StringTokenizer st = new StringTokenizer(Equipment1, ",");
        int nTokens = st.countTokens();
        for(int i = 0; i < nTokens; i++){
         comboEqui.addItem(st.nextToken());
        }
        StringTokenizer ts = new StringTokenizer(Equipment2, ",");
        int nTokense = ts.countTokens();
        for(int i = 0; i < nTokense; i++){
         comboEqui.addItem(ts.nextToken());
        }
 
        comboEqui.addItemListener( new ItemListener() {
         public void itemStateChanged( ItemEvent e ) {
           if(e.getStateChange()==ItemEvent.SELECTED)      
             {
              if(comboProc.getItemCount() != 0){
              comboProc.removeAllItems();
            }
         try{
              comboProc.addItem(" ");
              FileInputStream fis = new FileInputStream("process.properties");
              Properties properties = new Properties();
              properties.load(fis);
              String temp = ""+comboEqui.getSelectedItem();
              temp = temp.substring(0,5);
      
             String proc = properties.getProperty(temp);
             StringTokenizer st = new StringTokenizer(proc,",");
             int count = st.countTokens();
             for(int i = 0; i < count; i++){
             comboProc.addItem(st.nextToken());
           }

      } catch (Exception eDocPfad) {
        System.out.println("Exception:  nicht korrekt!");
       }
    }


die Sql Abfrage da ich anscheinend hier die Listener einbauen mus

Code:
private Vector loadData (String SQL, DBAccess db )
{       
     vSearch = new Vector();
             

       SQL = "SELECT PROCESS_DATE, MEAN, SIGMA, EQUIPMENT_ID, PROCESS FROM MEASUREMENT WHERE RUN_CODE = '" 
                    + "83534" +"' OR RUN_CODE = '" 
                    + "721602" +"'"; 

                    
    SQL = SQL + " ORDER BY ID DESC";
    System.out.println(SQL);  

    ResultSet datenRSET = db.DBExecuteSelect(SQL);

    try {
      while( datenRSET.next()) {
        try {
        
           OMeasurementRS30 newObject = new OMeasurementRS30();

                   newObject.test             = ("?");                              // TESTWEISE
                   newObject.process          = datenRSET.getString("Process_Date");  
                   newObject.mean = datenRSET.getFloat("mean");
                   newObject.sigma = datenRSET.getFloat("sigma");
                   newObject.equipment_ID = datenRSET.getString("EQUIPMENT_ID");      
                   newObject.processpr = datenRSET.getString("process");              

               vSearch.addElement(newObject);                                    
      
        }
        
        catch (Exception e) {
          System.out.println("Error: " + e.getMessage());
        }
      } 
      db.close();
    }
     catch (Exception e) {
     System.out.println("Error: " + e.getMessage());
    }
    System.out.println(vSearch.size() + " Entries found!");

      return vSearch;   
    
  }

also die 2 objekte process und equipment (die beiden letzten) in der sql abfrage sollen durch die daten der combobox ausgefüllt werden


ich hoff ihr könnt mir helfen..... Thx im vorraus
 
Moin,
- manchmal ist es einfacher, in eine Combox keine Strings zu verwalten sondern Objekte reinzuschreiben. Allerdings ist es dann notwendig, für diese Objekte das toString) zu überschreiben
- Wir verwenden für die Comboboxen immer das actionPerformed()
- Schau Dir mal meine Beiträge zu TableRows an
- Update der Tabelle geschieht mit TableModel.fireTableDataChanged()
 

Neue Beiträge

Zurück