JTables, Test highlighten innerhalb einer Zelle

Doc

Aktives Mitglied
Hallo,
ich hab ein Problemchen, bei dem ich leider nicht weiterkomme ;(

Ich möchte innerhalb von Zellen die mit Text gefüllt sind, Teile davon highlighten.
Wichig ist, dass das Highlight auch stehenbleibt, es darf nicht verschwinden, wenn man auf eine andere Zelle klickt oder so.
Es müssen also in mehreren Zellen mehrere Highlights gleichzeitig möglich sein.
Die Position des Highlights innerhalb einer Zelle sollte mit Start- und Endpunkt auswählbar sein.

Das Highlight muss nicht unbedingt eine farbliche Markierung sein. Fettschrift oder Unterstreichen wäre auch in Ordnung. Vielleicht macht das die Sache leichter?!

Ich hab schon versucht mich im Inet schlau zu machen, aber die Sache scheint nicht ganz einfach zu sein.

Kann mir dabei jemand helfen?

Danke schonmal im Voraus!

Grüße,
Doc
 
Zuletzt bearbeitet:

Doc

Aktives Mitglied
Hallo,
also du musst dir vorstellen, in einer Zelle steht ein Satz. Und davon soll zum Beispiel ein Wort gehighlightet werden, egal wie. Nur eben hervorgehoben vom anderen Text. Ein Highlight-Stil reicht aus.
 

carolin

Mitglied
Und wie? Klickt der Nutzer dieses Wort an? Wird beim Starten des Programms dieses Wort schon markiert?

Immer noch: Schau dir den TableCellRenderer an. :)
 

Doc

Aktives Mitglied
noch ne Zusatzfrage :)

Geht es in einer Tabelle, dass der Text innerhalb einer Zelle markierbar ist, aber dennoch nicht editierbar.

Also damit ich Textteile herauskopieren kann über die Positionen innerhalb der Zelle, aber dass der Text in der Zelle gesichert ist, falls man ausversehen etwas tippt während man markiert.
 

KrokoDiehl

Top Contributor
Prinzipiell wird das, was du vorhast, von einem TableCellRenderer erledigt. Standardmäßig ist dies ein JLabel. Ein recht schneller Weg müsste es sein, wenn du für deine Texte HTML verwendest, z.B. also

<html><body>Dieses <b>Wort</b> ist fett</body></html>

als Zelleninhalt setzen. Ohne HMTL lässt sich das Problem dann einfacher Stellen, wenn du einen normalen JLabel betrachtest: Wie bekommt man hier Textteile andersfarbig hin, ohne HTML zu verwenden?
Tja, spontan weiß ich es nicht... ;) Vielleicht kann man mit StyledDocument arbeiten, oder
Code:
paintComponent()
überschreiben (klingt schmerzhaft)...
-----
Andere Alternative: Einen eigenen TableCellRenderer verfassen, der von JTextField (o.A.?) erbt und dann über dessen Document arbeiten. Weiterhin muss man das Textfeld dann optisch konfigurieren, sodass es wie ein Label aussieht (
Code:
setEditable(false)
,
Code:
setBorder(null)
usw., könnte auch bei folgendem Problem helfen).
-----
Das mit der Textmarkierung müsste auch im TableCellRenderer gehen, wenn du
Code:
setFocusable(true)
setzt. Oder probier einfach mal einen normalen JLabel aus, wie du diesen markierbar machst.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
W 2 JTables in einem Swing-Fenster? AWT, Swing, JavaFX & SWT 5
F Zeile in mehreren Jtables bei Selektion markieren AWT, Swing, JavaFX & SWT 11
P Zwei JTables auf eine A4-Seite mit einstellbaren Rändern AWT, Swing, JavaFX & SWT 9
M Swing Inhalt meines JTables wird falsch dargestellt AWT, Swing, JavaFX & SWT 8
A befüllen eines JTables mittels Methode AWT, Swing, JavaFX & SWT 10
Helgon Zwei jTables gleich Breit AWT, Swing, JavaFX & SWT 4
S Swing Scrollpane und JTables AWT, Swing, JavaFX & SWT 6
T Zwei Jtables eine JscrollPane AWT, Swing, JavaFX & SWT 3
A Mehrere JTables in einem Fenster AWT, Swing, JavaFX & SWT 8
R Swing 2 jTables -2 Models - 1 Datenklasse: Änderungen AWT, Swing, JavaFX & SWT 11
K Swing Layout-Problem mit JTables und JLists (Mindestgrößen) AWT, Swing, JavaFX & SWT 11
Meldanor JTables - Zeilen hinzufügen/löschen AWT, Swing, JavaFX & SWT 4
S Übernehmen von Inhalten aus Zellen in JTables ohne Return AWT, Swing, JavaFX & SWT 7
C drei JTables, nur eine soll selektiert sein AWT, Swing, JavaFX & SWT 2
C MouseListener für Spalte eines JTables AWT, Swing, JavaFX & SWT 4
G Drag&Drop zwischen JTables AWT, Swing, JavaFX & SWT 2
I Drag and Drop zwischen zwei JTables AWT, Swing, JavaFX & SWT 5
V Grösse eines JTables ändern AWT, Swing, JavaFX & SWT 2
A mehrere jtables verwalten AWT, Swing, JavaFX & SWT 7
F JTables überschrift und Ordnung AWT, Swing, JavaFX & SWT 2
E 13 Jtables deren zellwerte voneinander abhaengen in jtabbed AWT, Swing, JavaFX & SWT 8
T Problem bei Update von JTables in JTabbedPane AWT, Swing, JavaFX & SWT 2
L Erste Spalte eines JTables soll nicht editierbar sein. AWT, Swing, JavaFX & SWT 7
J Daten in verschiedenen JTables AWT, Swing, JavaFX & SWT 5
K Objekt in eine bestimmte Zelle eines JTables legen AWT, Swing, JavaFX & SWT 3
G Jtables und die Tabellenbreite???? AWT, Swing, JavaFX & SWT 13
N Zwei JTables in einem Frame AWT, Swing, JavaFX & SWT 8
G JavaFX Steuerung bzw. Test von externer JavaFX Anwendung (liegt nur als jar vor) AWT, Swing, JavaFX & SWT 9
N Swing Mocken von JOptionPane im JUnit-Test AWT, Swing, JavaFX & SWT 3
W JavaFX GUI Test Framework AWT, Swing, JavaFX & SWT 4
T SWT SWTBot Test: Dialog soll sich öffnen,wenn button gedrückt AWT, Swing, JavaFX & SWT 3
7 AWT problem: KeyListener/ test im Label umändern AWT, Swing, JavaFX & SWT 4
S Multiple Choice Test AWT, Swing, JavaFX & SWT 2
T [LWJGL] Depth-Test? AWT, Swing, JavaFX & SWT 2
P Swing Test ob Tabellenspalte sortiert ist AWT, Swing, JavaFX & SWT 6
S Binär Test AWT, Swing, JavaFX & SWT 3
G Test, ob Fenster sichtbar? AWT, Swing, JavaFX & SWT 2
A Automatisierter Test von Swing GUIs AWT, Swing, JavaFX & SWT 3
O Text in JTable highlighten AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben