Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Default-Tabstops setzen funktioniert nicht (RichEdit) (https://www.delphipraxis.net/151092-default-tabstops-setzen-funktioniert-nicht-richedit.html)

TheMiller 5. Mai 2010 16:38


Default-Tabstops setzen funktioniert nicht (RichEdit)
 
Hallo,

ich habe hier im Forum eine Prozedur gefunden, mit der sich die Tabstops setzen lassen. Diese macht nichts anderen, als den Paragraph zu formatieren und zu setzen. Genau das gleiche mache ich mit meinem Code über eine andere Komponente nach Belieben. Nun will ich aber, dass ein Standard-Tabstop bei Programmstart gesetzt wird - und da kommt nun der Code ist Spiel.

Leider funktioniert er nur, sobald mindestens ein Zeichen Text im RichEdit vorhanden ist. Selbstverständlich sind die RichEdits aber bei Start leer.

Es muss doch aber möglich sein, default-Werte für einen Paragraphen zu setzen... oder :gruebel:

Hier - der Vollständigkeit halber - der gefundene Quelltext

Delphi-Quellcode:
procedure SetTabstops( re: TRichedit; TabPositions: array of single );
Var
  pf: TParaFormat;
  i : Integer;
  charwidth : Integer;
begin
  Assert( Assigned( re ), 'SetTabstops: re cannot be nil' );
  FillChar( pf, sizeof(pf), 0);
  pf.cbSize := Sizeof( pf );
  pf.dwmask := PFM_TABSTOPS;
  if High(TabPositions) >= MAX_TAB_STOPS then
    pf.cTabCount := MAX_TAB_STOPS
  else
    pf.cTabCount := High(TabPositions)+1;
  For i:= 0 To pf.cTabCount-1 Do
    pf.rgxTabs[i] := Trunc(TabPositions[i] * 1440);

  ShowMessage(IntToStr(re.perform( EM_SETPARAFORMAT, 0, Integer( @pf ))));
  ShowMessage(SysErrorMessage(GetLastError()));
end; { SetTabstops }
Bitte helft mir. Vielen Dank.


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:20 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz