| Scalabium Software | |
| Knowledge for your independence'. | |
| #10: How can I add the horizontal scrollbar into listbox? | 
| 
 | If you want to add a horizontal scrollbar in TListBox
(which have a vertical scrollbar only by default),
you need send a LB_SETHORIZONTALEXTENT message:
SendMessage(ListBox1.Handle, LB_SETHORIZONTALEXTENT, FMaxItemWidth, 0);
For example, the next code shows how you can scroll a data
with maximum width of item strings:
procedure TForm1.FormCreate(Sender: TObject);
var i, intWidth, intMaxWidth: Integer;
begin
  intMaxWidth := 0;
  for i := 0 to ListBox1.Items.Count-1 do
  begin
    intWidth := ListBox1.Canvas.TextWidth(ListBox1.Items.Strings[i] + 'x');
    if intMaxWidth < intWidth then
      intMaxWidth := intWidth;
  end;
  SendMessage(ListBox1.Handle, LB_SETHORIZONTALEXTENT, intMaxWidth, 0);
end;
 | 
|     | Copyright© 1998-2025, Scalabium
        Software. All rights reserved. |