Text kopieren aus TreeViewer mit mehreren Spalten

Status
Nicht offen für weitere Antworten.

gbo

Mitglied
Hallo zusammen,

ich habe eine View mit einem Treeviewer gebaut (Siehe Anhang). Dieser hat 2 Spalten. Die erste Spalte enthält einen Key und die zweite Spalte einen Wert. Ich möchte gern den Wert kopieren können. Eine Möglichkeit wäre meines Erachtens, die zweite Spalte als selektierbarenText zu machen und somit die Copy Funktion des Betriebssystems zu verwenden.

Könnte mir jemand sagen, wie ich das hinbekomme oder ob es einen anderen Weg gibt?
 
G

Gonzo17

Gast
Ein anderer Weg wäre rein theoretisch einen kleinen Copy-Button zu erstellen, der den Text automatisch liest und in die Zwischenablage kopiert. Dann wird einem wenigstens das selektieren per Maus und STRG+C erspart, aber das Ergebnis is natürlich identisch. Vorteil wäre natürlich, dass du deinen Text nicht selektierbar machen musst (wüsste auf die Schnelle auch nicht, wie das da geht, müsste probieren).
 

gbo

Mitglied
Danke für die schnelle Antwort. Das Problem ist, dass ich den Text auch teilweise kopieren können möchte. Daher geht ein Copy Button leider nicht.
 

Koringar

Bekanntes Mitglied
Hi,

oder eine andere Möglichkeit wäre vielleicht, einen KeyListener auf dein Tree und der reagiert dann auf das Copykürzel.
In dem sagst dann was er wie kopieren soll.
 
G

Gonzo17

Gast
Danke für die schnelle Antwort. Das Problem ist, dass ich den Text auch teilweise kopieren können möchte. Daher geht ein Copy Button leider nicht.

Hm ok. Also, sind das Labels, die du da verwendest? Du könntest ja theoretisch daraus eine Komponente Text machen mit SWT.READ_ONLY, dann hast du selektierbaren Text.
 

dzim

Top Contributor
Also ich bin ehrlich, das ich das Problem des "teilweise kopierens" nicht verstehe.
Du möchtest mehr als ein Element kopieren? Nur Werte? Oder Schlüssel-Wert-Paare?

Also generell fände ich es gelinde gesagt häßlich, nur wegen des Kopierens einen TextCellEditor auf die zweite Spalte zu legen.

Lars Vogel beschreibt hier Eclipse JFace TableViewer - Tutorial Zwischenablage-Variante.

Ich hatte neulich - scheinbar Betriebsystembedingt (Linux/GTK) - allein schon beim einzelne Spalten selektieren Probleme, da einige Desktopsystem das scheinbar nicht unterstützen, da fand ich die "Krücke" über einen Dialog, in dem ich aus den markierten Zeilen eine Anzahl von Spalten auswähle und sie im CSV-Format in die Zwischenablage werfe, besser - ich hätte beinahe "eleganter" gesagt, aber das stimmt ja nun wirklich nicht! :)
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben