Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2003.09.01;
Скачать: [xml.tar.bz2];




Вниз

Горизонтальная прокрутка в 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)"




Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2003.09.01;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.033 c
14-1560           Всеволод Соловьёв     2003-08-12 11:23  2003.09.01  
Глюкобаги форума


7-1695            Chieftain             2003-06-18 18:26  2003.09.01  
Есть *.vxd - файл. Как заставить систему видеть *.vxd файл?


14-1661           wm.warning            2003-08-12 15:00  2003.09.01  
PHP+MsSql


14-1575           likeanangel           2003-08-11 17:32  2003.09.01  
Редактор метафайлов


1-1465            Kallega               2003-08-19 15:33  2003.09.01  
Проблема определения типов