TableModel

  • Themenstarter Themenstarter Guest
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hi,
ich hab mal angefangen ne tabelle zu programmieren. hab mehr oder weniger das bsp aus dem tut hier genommen.
Code:
      // Die Daten für das Table
      String[][] data = new String[][]{
            {"a", "b", "c", "d"},
            {"e", "f", "g", "h"},
            {"i", "j", "k", "l"}
      };
      
      // Die Column-Titles
      String[] title = new String[]{
            "A", "B", "C", "D"
      };
      
      // Das JTable initialisieren
      JTable table = new JTable( data, title );
aber wie benutze ich das table model? wollte nämlich einfach meinen code erweitern, um das model halt, aber irgendwie klappts nich ... und aus dem tut fürs tablemodel werd ich au net wirklich schlau. :cry:

Danke![/code]
 
Hmm...was genau verstehst du denn beim TableModel nicht? Denke mal in der FAQ stehts eigentlich recht gut drin, so dass man nicht alles nochmal posten muss.

Spezifiziere doch mal welche Probleme du hast und guck dir die FAQ nochma an....
 
Reicht es wenn ich das so mache?
Code:
 TableModel model = new TableModel;
 JTable table = new JTable(model);
und wo wäre da der genaue vorteil?
in meinem buch hab ich im grunde nur das gefunden:
Code:
public JTable(TableModel dm, TableColumnModel cm, ListSelectionModel sm)
und das hilft mir mal gar net...
 
Schau dir doch genau an was Beni gemacht hat:

Code:
      final Model model = new Model(50, 60);
      
      // Das JTable initialisieren
      JTable table = new JTable( model );

Model ist eine Klasse die TableModel implementiert.

Dein Code oben würde ja kein Objekt erzeugen, das mal ganz nebenbei.

Probier dich einfach ma dadran und versuch deine eigene Klasse zu schreiben die TableModel implementiert.
 
TableModel ist nur ein Interface, du benötigst irgendeine Klasse, welche TableModel implementiert.

z.b. das javax.swing.table.DefaultTableModel. Wenn du ein DefaultTableModel machst, kannst du jederzeit mehr Daten in die Tabelle schreiben, oder auch Daten löschen (guck in die API, es gibt da Methoden wie "addRow" oder "removeRow"...).
 
Beni hat gesagt.:
Wenn du ein DefaultTableModel machst, kannst du jederzeit mehr Daten in die Tabelle schreiben,
kann ich dann auch mehrere objekttypen in eine zelle packen. also, wie ichs hier brauchen würde String + Color, oder Boolean + Color, Integer + Color?
 
Anonymous hat gesagt.:
Beni hat gesagt.:
Wenn du ein DefaultTableModel machst, kannst du jederzeit mehr Daten in die Tabelle schreiben,
kann ich dann auch mehrere objekttypen in eine zelle packen. also, wie ichs hier brauchen würde String + Color, oder Boolean + Color, Integer + Color?
Wie meinst Du das?? z.B. eine Zahl anzeigen und den Hintergrund in der Farbe 'Color'?
Ja das geht problemlos.
 
hmm, hab das jetzt mal so umgeschrieben.
es läuft auch. allerdings bin ich mir net sicher ob das so richtig is, bzw. wie ich das model jetzt zu meinem vorteil nutzen kann.
Code:
DefaultTableModel model = new DefaultTableModel (data, columnNames);
        table = new JTable(model)
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben