![]() |
FastReport: lange Texte abgeschnitten (EndEllipsis?)
Hallo.
Ich baue derzeit an einigen Reports mit FastReport. So weit, so nett, FR gefällt mir richtig gut. Nun habe ich in einigen Spalten einer tabellarischen Ansicht u.U. recht langen Text. Dieser wird (AutoWidth ist False) dann am Ende abgeschnitten. Gibt es einen einfachen Weg - wie bspw. bei TLabel (EllipsisPosition) - stattdessen am Ende automagisch "..." schreiben zu lassen? Danke und Grüße. S. PS: Bereits im FastReport Forum angefragt, jedoch ohne Antwort diesbzgl. ![]() |
AW: FastReport: lange Texte abgeschnitten (EndEllipsis?)
*push*
:oops: |
AW: FastReport: lange Texte abgeschnitten (EndEllipsis?)
Ich würde es so probieren: Im Report für das Textfeld ein OnBeforePrint-Event definieren.
Delphi-Quellcode:
Das geht auch schneller (binärsuche), aber das Prinzip sollte klar sein.
procedure Memo1OnBeforePrint(Sender: TfrxComponent);
Var s : String; i : Integer; wd : Extended; memo : TfrxMemoView; begin memo := TfrxMemoView(Sender); s := memo.Memo.Text; if memo.CalcWidth>memo.Width then for i:=Length(s) downto 1 do begin memo.Memo.Text := Copy(s,1,i)+'...'; wd := memo.CalcWidth; if wd <= memo.Width then break; end; end; Das funktioniert aber -glaube ich- nur, wenn im Text keine Felder stehen. Aber vielleicht kann man den Inhalt des Memos irgendwie 'ausrechnen' lassen, sodaß etwaige Felder substituiert werden. |
AW: FastReport: lange Texte abgeschnitten (EndEllipsis?)
Hallo und Danke. Der Ansatz ist gut und funktioniert erstem Anschein nach wie gewünscht.
Schönes Wochenende, S. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:59 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz