Mega Code Archive

 
Categories / Delphi / VCL
 

Adjusting the tab location in a TMemo component

Title: Adjusting the tab location in a TMemo component Question: How can I adjust the tab location in a TMemo component? Answer: Send a EM_SETTABSTOPS message to the Memo control. The following example sets the first 5 tab stops to 20 pixels. Example: procedure TForm1.FormCreate(Sender: TObject); var DialogUnitsX : LongInt; PixelsX : LongInt; i : integer; TabArray : array[0..4] of integer; begin Memo1.WantTabs := true; DialogUnitsX := LoWord(GetDialogBaseUnits); PixelsX := 20; for i := 1 to 5 do begin TabArray[i - 1] := ((PixelsX * i ) * 4) div DialogUnitsX; end; SendMessage(Memo1.Handle, EM_SETTABSTOPS, 5, LongInt(@TabArray)); Memo1.Refresh; end;