Einzelnen Beitrag anzeigen

Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#5

Re: Paraformat setzen geht mal, und mal nicht...

  Alt 29. Jun 2009, 14:27
Das mit der Fehlermeldung schaut so aus. Ich habe in die o.g Funktion noch ein "ShowMessage" eingebaut:

Delphi-Quellcode:
procedure SetTabstops( re: TRichedit; TabPositions: array of single );
var
  pf: TParaFormat;
  i : 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);

  re.perform( EM_SETPARAFORMAT, 0, lParam( @pf ));
  ShowMessage(SysErrorMessage(GetLastError)); // <---------- Hier
end; { SetTabstops }
Doch ich habe rausgefunden, dass das Verhalten u.a auch mit der Eigenschaft ScrollBars (ssVertical) der RichEdits zusammenhängt. Wenn ich diese Eigenschaft auf ssNone stelle, geht es manchmal. Was ist da los?
  Mit Zitat antworten Zitat