Registriert seit: 25. Okt 2007
Ort: Radbruch
1.990 Beiträge
Delphi 7 Professional
|
Re: In eine Zeile in einem Richtext mehrere texte einfügen.
20. Mär 2008, 11:03
In einer Schleife alle Einträge, die innerhalb einer Spalte stehen sollen, auf deren Länge untersuchen, der längste gefundene Wert+Freiraum ist dann dein Wert für den Tabulator der Spalte. Canvas hat eine Methode "TextWidth" - schau hierzu in die Hilfe.
Den Wert für den Tabulator setzt du mit Hilfe von SendMessage/PostMessage und EM_SETTABSTOPS, auch hierzu solltest du weitere Informationen finden.
Alternativ anstelle eines MEMOS/RICHEDITS vielleicht auch ein Stringgrid verwenden. Wenn keine Linien und keine FixedCols/FixedRows dargestellt werden, schaut das eigentlich genau so aus wie ein EditControl - damit dürfte das alles ein wenig einfacher sein. Sollen spezielle Textattribute verwendet werden, musst du das OnDraw des Grids dann selbst übernehmen.
Ralph
|