carookee - group communication for you
Home / JavaForum / Swing + AWT
Infos   |   Features   |   Gold-Edition   |   Kundenservice   
java
  Übersicht
  Forum
Beginner
Java allgemein
JDBC
JNI
Networking
Online-Ressourcen
Swing + AWT
XML
Meckerecke
  Mitglieder
LOGIN





· Passwort vergessen
· Kostenlos anmelden
  Information
  Demo
  Features
  Im Vergleich
  Anmeldung
SUCHE
Beiträge, Foren oder Verfasser finden:
  Kundenservice
  Impressum
  Datenschutz
  AGB
Status
4.428 User online
0 User eingeloggt
 

Beiträge
   Antworten     Neuer Beitrag    

Beitrag 221 von 1460 (15%) |<   <   >   >|

Autor Harald Faber
Datum 04.11.03, 11:01
Betreff Re: AW: AW: JTable lässt sich nicht Editieren


#Hi vielen dank für deine mühe.

Ich bin durchaus geduldig, aber ein paar Grundlagen möchte ich schon voraussetzen. Besorg Dir mal ein Java-Buch.

#habe versucht eine setValue zuschreiben im moment fällt mir leider nicht
viel dazu ein. Was ich versucht habe, hat leider nicht
funktioniert.
Ich verstehe irgendwie nicht wie das objekt initialisiert werden muss

Na zum Beispiel im Konstruktor des TableModels...

public Object getValueAt(int rowIndex, int columnIndex) {
    TVariable v = (TVariable)rows.get(rowIndex);


Das macht natürlich nur dann Sinn, wenn in rows schon was drin steht.

    public void addRow(TVariable v) {
    rows.add(v);
    this.fireTableRowsInserted(rows.size()-1, rows.size()-1);
}


Klingt gar net so schlecht, vorausgesetzt Du rufst diese Methode auch entsprechend außerhalb des TableModels auf. Allerdings empfiehlt sich evtl. ein fireTableDataChanged(), das benutze ich eigentlich immer.

public boolean isCellEditable(int row, int col) {
    //Don´t let the user change the running id
    if (col < 1) {
        return false;
        } else {
        fireTableRowsUpdated(row,col);
        return true;
    }
}


Normalerweise ist das fireTableRowsUpdated() hier nicht nötig, sollte aber auch net schaden.

public void setValueAt(Object value, int row, int col){
    //rows [row] [col] = value;
    //ich verstehs net :-(
}


So kann das natürlich ebenfalls nicht funktionieren, denn rows ist ja eine ArrayList und kein zweidimensionales Array.
Was Du brauchst ist eine eindeutige zweidimensionale Zuordnungsliste, wie z.B. ein zweidimensionales Array.

>>Kein Problem. Du musst nur die Tabelle dem Viewport der Scrollpane
hinzufügen und nicht der Scrollpane direkt. Also
scrollpane.getViewport().add(table);
#die tablle wird nun weiss dargestellt. Ich kann aber leider keine zellen
adden. Bekomme nichts angezeigt. :-(

Das liegt daran, dass Du bei getValueAt(...) nichts zurück bekommst. Geh mal mit einem Debugger da rein und schau es Dir an.
Probier doch zunächst einmal, hardkodierte Werte in die Tabelle zu schreiben. Und gugg mal, ob Du online nicht ein paar Quellen oder Tutorials zu Tabellen findest, mir scheint, Dir fehlen da wirklich noch grundlegende Kenntnisse. Diese hier zu vermitteln übersteigt meine Geduld und meine Zeit...

>vielen dank für deine hilfe bei der MenuBar, es hat mir sehr weiter
geholfen.

Na endlich. ;-)

>Vielen dank auch schon mal wieder im voraus :-) ich hoffe das ich dir auch
mal helfen kann :-)
Viele grüße

Halte ich im Moment für unwahrscheinlich, aber wer weiß?! ;-)


Diskussionsverlauf:
JTable lässt sich nicht Editieren + Probleme mit dem Menü
    Re: JTable lässt sich nicht Editieren + Probleme mit dem Menü
        AW: JTable lässt sich nicht Editieren + P
            Re: AW: JTable lässt sich nicht Editieren + P
                AW: AW: JTable lässt sich nicht Editieren
                    Re: AW: AW: JTable lässt sich nicht Editieren

 Auf diesen Beitrag antworten
 Neuen Beitrag verfassen


|<   <   >   >|

                                                                                                                                                                                                                           

Impressum  · Datenschutz  · AGB  · Infos  · Presse
Ein modernes Forum: teamturn.com