[Code] [JAVA] JTable automatisch aktualisieren

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von LSDbar, 10. November 2008 .

  1. 10. November 2008
    [JAVA] JTable automatisch aktualisieren

    Hallo,

    ich hab ein kleines Problem:

    Ich würde gerne eine Tabellle automatisch aktualisieren lassen. Mittlerweile rausgefunden habe ich, dass das ganze über ein fire"X" bewirkt wird. Allerdings muss man dazu irgendwie erstmal ein Model für die Tabelle erstellen und brauch auch irgendwie eine bestimmt Art Listener dazu. Gebau an dem Punkt haperts! Da mein Code bisher nichts dergleichen hergibt verzichte ich mal darauf den hier reinzuschreiben.

    Google hat mir nicht wirklich weitergeholfen, deswegen zähl ich jetzt auf euch! ;-)

    Ich bin natürlich froh über funktionierenden Code aber noch glücklicher bin ich, wenn mir jemand erklärt wie es funzt.


    mfg, LSDbar
     
  2. 10. November 2008
    AW: [JAVA] JTable automatisch aktualisieren

    Richtig dazu brauchst du eine DefaultTableModel kannst entweder das nehmen und dann einfach deiner JTable zuweisen und das mit Vektoren füttern.

    Oder du nimmst nen 2 Dimensionales String Array ( String[][] ) Oder du machst dir dein DefaultTable Model selber hab hier noch eins pooste dir mal den Codeschnipsel

    Code:
    import javax.swing.Icon;
    import javax.swing.table.DefaultTableModel;
    
    
    
    class browserModel extends DefaultTableModel{
     
     /**
     * 
     */
     private static final long serialVersionUID = 1L;
     private Class[] classes = new Class[]{
     Icon.class,
     String.class,
     Float.class
     }; ;
     
     // Die Anzahl Columns
     public int getColumnCount() {
     return 3;
     }
     
    
     
     // Die Titel der einzelnen Columns (Der Name der Klasse die Dargestellt wird)
     public String getColumnName(int column) {
     String Spaltenname = null;
     
     switch (column) {
     case 0:
     Spaltenname = "Typ";
     break;
     case 1:
     Spaltenname = "Pfad";
     break;
     case 2:
     Spaltenname = "Size";
     break;
     default:
     break;
     }
     return Spaltenname;
     }
     
     public void removeAll() {
     int anzahl = this.getRowCount();
     
     for(int i=0;i<anzahl;i++) {
     this.removeRow(0);
     }
     }
     
     //Damit die Cellen nicht Editierbar sind
     public boolean isCellEditable(int x, int y) {
     return false;
     }
    
     
     // Eine Angabe, welchen Typ von Objekten in den Columns angezeigt werden soll
     @Override
     public Class getColumnClass(int columnIndex) {
     
     return classes[columnIndex];
     } 
    }
    kann man hier eig. gar kein Code Formatieren? Naja egal
    Edit by Kolazomai:
    Code:
    -Tags benutzen ;)
    
    so deklarierst du den in deim programm
    
    [code]private DefaultTableModel browserData = new browserModel();
    und beim erstellen deines Jtables kannst in den Konstruktor das Model mit übergeben sieht dann so aus:

    Code:
    new JTable(browserData);

    Ganz easy eig.
     
  3. 11. November 2008
    AW: [JAVA] JTable automatisch aktualisieren

    hi,

    das mit dem listener hast du schon richtig gelesen. du musst in deinem programm ein listener oder event einbauen. diese könnte zum beispiel ein button sein.
    wenn du nun diesen button betätigst, dann soll sich die tabelle ändern.
    eine sehr gut seite zu events ist diese hier: http://www.sts.tu-harburg.de/~r.f.moeller/lectures/ihp-sose-04/Listener.html

    natürlich lässt es sich nun schlecht erklären, was du genau gemacht hast. deshalb habe ich ein beispiel in einem forum gefunden, der das problem mit der tabelle hat und es wird ihm recht gut erklärt. es geht ab den 5. post los. Class übergreifend JPanel aktualisieren @ Swing, Java2D/3D, SWT, JFace - tutorials.de: Tutorial, Forum, Anleitung & Hilfe

    hoffe, dass es dir ein bisschen weiterhilft.


    nice day!!!
     
  4. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.