Hallo zusammen,
ich bin gerade dabei, AvERP an unser Firmenbedürfnisse anzupassen.
Nun habe ich die Aufgabe, per Button eine Textzeile in ein bereits mit Text gefülltes RichEdit Feld hinzuzufügen.
Kann mir jemand einen Tip geben? Bin schon seit 2 Tagen erfolglos am rumprobieren.
TIB_RichEdit Textzeile hinzufügen
Moderator: SYNERPY
-
- Beiträge: 13
- Registriert: Di Jan 08, 2008 10:06 am
-
- Beiträge: 36
- Registriert: Di Jan 16, 2007 11:31 am
Hallo,
bei diesem Problem ist es wichtig zu wissen an welcher Stelle der einzufügende Text stehen muss, da das RichEditFeld Steuerzeichen neben dem normalen Text enthält. Text der außerhalb dieser Steuerzeichen steht wird beim Interpretieren ignoriert!
Der Button müßte den bestehenden Text wie folgt ersetzen:
UPDATE Bxxx
SET TEXT =
F_BLOBREPLACESTRING(TEXT,F_MID(F_BLOBASPCHAR(TEXT),F_SUBSTR('\fs',F_BLOBASPCHAR(TEXT)),5),
F_LRTRIM(F_MID(F_BLOBASPCHAR(TEXT),F_SUBSTR('\fs',F_BLOBASPCHAR(TEXT)),5))||' '||'Ihr Text',0,1)
WHERE ID = :IHRE_ID;
Dieser Update Befehl sucht nach dem ersten Vorkommen der Zeichenkette \fs im Richeditfeld. Diese definiert die Schriftgröße (Zahl hinter \fs) und steht als letztes Steuerzeichen vor dem eigentlichen Text. \fs wird durch \fs und den einzufügenden Text ersetzt.
Um noch Leerzeilen an den Text anzufügen kann man diesem noch die Steuerzeichen \par anhängen, wobei wichtig ist, daß danach noch ein Leerzeichen kommt, da die Steuerzeichen sonst wirkungslos bleiben!
Soll der Text an anderer Stelle stehen, muss entsprechend nach einem anderen Steuerzeichen oder einem festen Text an dieser Position gesucht werden.
bei diesem Problem ist es wichtig zu wissen an welcher Stelle der einzufügende Text stehen muss, da das RichEditFeld Steuerzeichen neben dem normalen Text enthält. Text der außerhalb dieser Steuerzeichen steht wird beim Interpretieren ignoriert!
Der Button müßte den bestehenden Text wie folgt ersetzen:
UPDATE Bxxx
SET TEXT =
F_BLOBREPLACESTRING(TEXT,F_MID(F_BLOBASPCHAR(TEXT),F_SUBSTR('\fs',F_BLOBASPCHAR(TEXT)),5),
F_LRTRIM(F_MID(F_BLOBASPCHAR(TEXT),F_SUBSTR('\fs',F_BLOBASPCHAR(TEXT)),5))||' '||'Ihr Text',0,1)
WHERE ID = :IHRE_ID;
Dieser Update Befehl sucht nach dem ersten Vorkommen der Zeichenkette \fs im Richeditfeld. Diese definiert die Schriftgröße (Zahl hinter \fs) und steht als letztes Steuerzeichen vor dem eigentlichen Text. \fs wird durch \fs und den einzufügenden Text ersetzt.
Um noch Leerzeilen an den Text anzufügen kann man diesem noch die Steuerzeichen \par anhängen, wobei wichtig ist, daß danach noch ein Leerzeichen kommt, da die Steuerzeichen sonst wirkungslos bleiben!
Soll der Text an anderer Stelle stehen, muss entsprechend nach einem anderen Steuerzeichen oder einem festen Text an dieser Position gesucht werden.