| |
| Setting custom tabstops in a ListBox. |
 |
How can I set custom tab stops in a TListbox control?
You will need to send a LB_SETTABSTOPS message to the Listbox. Note: The Listbox tabwidth property must be set to a number other than zero for the LB_SETTABSTOPS mesage to work.
Example:
procedure TForm .FormCreate(Sender: TObject);
begin
ListBox .TabWidth := ;
ListBox .Items.Add('one'+#9+'one');
ListBox .Items.Add('two'+#9+'two');
ListBox .Items.Add('three'+#9+'three');
end;
procedure TForm .Button Click(Sender: TObject);
var
DialogUnitsX : LongInt;
PixelsX : LongInt;
i : integer;
TabArray : array[0..4] of integer;
begin
DialogUnitsX := LoWord(GetDialogBaseUnits);
PixelsX := SpinEdit .Value;
for i := to 5 do begin
TabArray[i - ] :=
((PixelsX * i ) * 4) div DialogUnitsX;
end;
if SendMessage(ListBox .Handle,
LB_SETTABSTOPS,
5,
LongInt(@TabArray)) = 0 then
ShowMessage('Tabs Not Set');
Listbox .Refresh;
end;
|
|
| Hits/month |
2,500,000+ |
Downloads (Since May 2000) |
7,393,709 |
| Total Files |
6,023 |
| Forum msgs |
7,670 |
| Articles/FAQs |
70+/900+ |
Top Selling Software at Amazon
|