Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.01;
Скачать: CL | DM;

Вниз

Горизонтальная прокрутка в ListBox   Найти похожие ветки 

 
RIMMER ©   (2003-06-28 00:27) [0]

Старый совет по добавлению сабжа неправильно работает в WinXP - длина скролла устанавливается меньше, чем надо. Что делать?


 
RIMMER ©   (2003-06-28 00:30) [1]

ЗЫ Имеется в виду следующая процедура
procedure TForm1.ShowHScroll(Sender: TObject; ListBox: TCustomListBox);
var

i, MaxWidth: integer;
begin

MaxWidth := 0;
for i := 0 to ListBox.Items.Count - 1 do
if MaxWidth < ListBox.Canvas.TextWidth(ListBox.Items.Strings[i]) then
MaxWidth := ListBox.Canvas.TextWidth(ListBox.Items.Strings[i]);

SendMessage(ListBox.Handle, LB_SETHORIZONTALEXTENT, MaxWidth+7, 0);

end;


 
Ученик ©   (2003-06-28 10:08) [2]

Вроде, работает этот код под Windows XP, а какие шрифты установлены с системе "большие" или "маленькие", может проблема в +7, или много не хватает ?


 
RIMMER ©   (2003-07-01 00:25) [3]

Не хватает по разному (кажется в зависимости от длины макс. строки), но обычно >20 пикселов. Шрифты по вкладке в свойствах дисплея = "Обычный размер (96 dpi)"



Страницы: 1 вся ветка

Текущий архив: 2003.09.01;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
3-1288
Zorik
2003-08-11 10:31
2003.09.01
как удалить prymary key в Interbase


4-1702
Dan
2003-07-03 16:36
2003.09.01
Подскажите по использованию DrawText


7-1693
Крот
2003-06-17 11:55
2003.09.01
PlaySound в Windows2000


3-1284
Zorik
2003-08-11 09:16
2003.09.01
Табличные даные в Interbase


9-1263
Namo
2003-02-26 19:57
2003.09.01
как стереть то, ...