Java SWT Tabelleninhalt formattieren

Bitte aktiviere JavaScript!
Hallo,

ich habe folgendes Problem bzw. Frage:
Ich habe eine Java / SWT Applikation, welches bei Applikationsstart über eine Access API eine Datenbank in ein SWT Widget lädt.
Dabei gibt es Spalte Content,die ich zu formattieren versuche. Hier 3 Beispieldatensätze:

1. <Group Key='XXXXX.XXXXX.XXXXX.XXXXX.XX.XX.XXXXX.XXXXX'><define Key='TestSuffix' Value='Test'/><#Include Key='TEST-Agent'></Group>

2. **************************************** Who: Date: Release: Task: What:* ------- -------- --------- --------------* TXXXXX 26.02.35 XXX111111 Manual Initial Test Setup*****************************************

3. ** $TESTfile: TEST1,v $* CVS $Author: TXXXXX $* Author: J.Doe* $Date: 2035/02/24 13:23:29 $* $Revision: 0.0 $*

Diese Zeilen möchte ich wie folgt haben:

1.
<Group Key='XXXXX.XXXXX.XXXXX.XXXXX.XX.XX.XXXXX.XXXXX'>
<define Key='TestSuffix' Value='Test'/>
<#Include Key='TEST-Agent'>
</Group>

2.
************************************************************************
* Who: Date: Release: Task: What:
* ------- -------- --------- -------------- ------------------------
* TXXXXX 26.02.35 XXX111111 Manual Initial Test Setup
************************************************************************

3.
*
* $TESTfile: TEST1,v $
* CVS $Author: TXXXXX $
* Author: J.Doe
* $Date: 2035/02/24 13:23:29 $
* $Revision: 0.0 $
*

Wie kann ich das machen? Es soll nur diese eine Spalte formattieren, keine andere.
 
Zuletzt bearbeitet:
A

Anzeige


Vielleicht hilft dir dieser Kurs hier weiter: (hier klicken)
Liefert der String von der DB kein \n? Eventuell nur \r oder so?
Ich würde mal schauen, was da für Steuerzeichen kommen, wenn wenn keine kommen, musst dir so was wir reguläre Ausdrücke für jeden Fall bauen, mit denen du den Text umformst. Was anderes würde mir sonst auch nicht einfallen...
 
Liefert der String von der DB kein \n? Eventuell nur \r oder so?
Ich würde mal schauen, was da für Steuerzeichen kommen, wenn wenn keine kommen, musst dir so was wir reguläre Ausdrücke für jeden Fall bauen, mit denen du den Text umformst. Was anderes würde mir sonst auch nicht einfallen...
Regex oder?
 
Eine andere Frage: Meine Datensätze kann ich momentan nicht selektieren.Wie kann ich das am einfachsten machen,das ich sie markieren und kopieren kann (ohne Edit)?
 
Liefert der String von der DB kein \n? Eventuell nur \r oder so?
Ich würde mal schauen, was da für Steuerzeichen kommen, wenn wenn keine kommen, musst dir so was wir reguläre Ausdrücke für jeden Fall bauen, mit denen du den Text umformst. Was anderes würde mir sonst auch nicht einfallen...
Wie müsste/könnte ich es interpretieren,wenn der String der DB \n liefert?
 
Ehrlich gesagt, ohne selbst mindestens genauso viel zu recherchieren wie du, werde ich deine Fragen nicht (mehr) beantworten können, da die Zeit, in der ich mit SWT gearbeitet habe, schon recht lang rum sind.

Aber: Kurze Suche nach "swt copy paste text from table to clipboard" liefert https://stackoverflow.com/questions/7471839/swt-table-with-copy-paste-functions - das könnte bei Frage eins schon helfen.

Frage zwei: Ich weiss nicht mehr, ob SWT \n in Text-Zellen in Tabellen "wegoptimiert" oder nicht. Aber ich vermute eigentlich, nicht. Aber du müsstest deine Strings vielleicht mal in HEX darstellen - da erkennst du dann schon, was da für Zeichen drin sind. Steuerzeichen werden ja nur nicht unbedingt (direkt) dargestellt - heisst aber nicht, dass sie nicht da sind. Interessant also wäre, ob die Zeichenkette überhaupt so etwas enthält:
Code:
Char  Dec  Oct  Hex   WhatAreThey
---------------------------------------
(nl)   10 0012 0x0a   New Line
(cr)   13 0015 0x0d   Carriage Return
(0A und 0D sind die interessanten Zeichen. Siehe hier.)
 
Hi,

wenn du JFace Tableviewer benutzt, dann kannst du mit dem ITableLabelProvider genau für die ContentSpalte formatieren. Wie du es formatieren willst, kannst du im #getText Methode definieren.

Grüße lam
 
Eine andere Frage: Meine Datensätze kann ich momentan nicht selektieren.Wie kann ich das am einfachsten machen,das ich sie markieren und kopieren kann (ohne Edit)?
Also wenn du JFace TableViewer benutzt, dann kannst du die Selektierung über tableViewer#getSelection() von Typ ISelection (IStructuredSelection) holen. Die Selektierung an sich kannst du dann wie folgt holen:

Code:
IStructuredSelection ss = (IStructuredSelection) selection;
List<Object> selections = ss.toList();
Grüße
lam
 
Passende Stellenanzeigen aus deiner Region:

Neue Themen

Oben