Форум: "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.029 c
3-1333            n13                   2003-08-07 15:08  2003.09.01  
dbf файлы


7-1682            Oleg                  2003-06-17 18:42  2003.09.01  
Windows shutdown


4-1717            Иксик                 2003-07-01 12:57  2003.09.01  
BitBlt


14-1636           Marconi               2003-08-12 07:54  2003.09.01  
Цена делфи


9-1265            Хранитель_7К          2003-02-26 09:03  2003.09.01  
Сортировка прозрачных объектов в ОпенГЛ