[Java] JTable und Bearbeitungsfähigkeit

Loopo

Admiral
Registriert
Juli 2002
Beiträge
7.617
Ich möchte zweidimensionale Listen darstellen und verwende dazu JTable, allerdings kann man mit Klick in eine Zelle diese bearbeiten. Dies möchte ich allerdings unterbinden, weiß aber nicht, wie ich das anstellen kann.
 
JTable.setCellEditor() und setDefaultEditor() nachschauen.

Als TableCellEditor dann null übergeben, denke ich. Bin aber nicht sicher.
 
Habe selber gerade erst ne kleine app geschrieben die eine JTable benutzt (und habe dort gemerkt dass dieTeile sau mächtig sind aber sowas von beschissen zu benutzen).


Meine JTable basiert auf ein TableModel (gibt mehrere tableModels, leider noch kein genauen überblick welcher genau wofür gut ist). Habe selber den AbstractTableModel als oberklasse benutzt.


also, du baust dir ne tableModel Klasse zusammen die von AbstractTableModel ableitet (die klasse muss 3 oder 4 methoden implementieren damit der Kompiler glückklich wird), und deine TableModelKlasse übergibst du der JTable als constructor parameter.


Normalerweise sind die cells dann NICHT editable :)

Wie man die jetzt wieder editable bekommt muss ich mal nachsehen,...


wird warscheinlich nicht die beste lösung sein, aber es funzt hier ohne probs (auch Listener usw auf der Tabelle benutzen funzt ohne probs)
 
Hi,
schaut euch mal das Tutorial bei Sun an.
Da steht alles, was man wissen muss. Vielleicht noch Model-View-Controller-Pattern (MVC) reinziehen um das Prinzip zu verstehen.
Es ist im übrigen geschickter von DefaultTableModel abzuleiten. Ansonsten Benutzerinteraktion über CellRenderer kontrollieren, wie Boron schon sagte.

Gruß,
stengbiegel
 
Zurück
Oben