Recent

Author Topic: [New] TrichMemo- set a Right TAB  (Read 418 times)

What I can do

  • Full Member
  • ***
  • Posts: 193
[New] TrichMemo- set a Right TAB
« on: March 03, 2025, 01:00:33 pm »
OS:Windows 10 @64
compiler: Lazarus 3.8
Project: set a Right Tab stop 25 characters or close to 2 inches from left margin. After some research from
https://wiki.lazarus.freepascal.org/RichMemo#SetParaTabs
Code: Pascal  [Select][+][-]
  1. procedure TForm1.Button1Click(Sender: TObject);
  2. var
  3.   StopList: TTabStopList;
  4.   ChrW: Integer;
  5. begin
  6.   ChrW := Canvas.TextWidth('W');
  7.   InitTabStopList(StopList, [3 * ChrW, (3 + 15) * ChrW, (3 + 30) * ChrW, (3 + 45) * ChrW, (3 + 60) * ChrW, (3 + 75) * ChrW]);
  8.   // you can also set the StopList.Tabs[].Offset manually in a loop
  9.   RichMemo1.SetParaTabs(1, 9999, StopList);
  10. end;
  11.  
  12. procedure TForm1.Button2Click(Sender: TObject);
  13. var
  14.   StopList: TTabStopList;
  15.   I: integer;
  16. begin
  17.   if RichMemo1.GetParaTabs(1, StopList) then
  18.   begin
  19.     for I := 0 to StopList.Count - 1 do
  20.     begin
  21.       RichMemo1.Lines.Add(format('%f', [StopList.Tabs[I].Offset]));
  22.     end;
  23.   end;
  24. end;
I know I'm getting close but I have not found exactly how to set the right tab
Would appreciate an example or link to hash over, Thanks in advance...

 

TinyPortal © 2005-2018