View previous topic :: View next topic |
Author |
Message |
CaptainFlint

Joined: 14 Dec 2004 Posts: 6197 Location: Москва
|
(Separately) Posted: Wed Jun 04, 2008 12:09 Post subject: |
|
|
DeathStalker
Репорт был. Если меня не подводит память, Гислер сказал, что это проблема виндового контрола, и он ничего не может с этим поделать.
Добавлено:
А, вот оно, нашёл:
http://ghisler.ch/board/viewtopic.php?t=12718 _________________ Почему же, ё-моё, ты нигде не пишешь "ё"? |
|
Back to top |
|
 |
VadiMGP
Joined: 21 Mar 2007 Posts: 1625
|
(Separately) Posted: Wed Jun 04, 2008 17:52 Post subject: |
|
|
Вообще-то, в MSDN откровено написано, что если в скролле больше 65,535 позиций (а в листе по умолчанию позиций столько сколько элементов), то скроллировать - забота программиста.
Почему Гислер не хочет этого делать - не берусь гадать. |
|
Back to top |
|
 |
CaptainFlint

Joined: 14 Dec 2004 Posts: 6197 Location: Москва
|
(Separately) Posted: Wed Jun 04, 2008 18:30 Post subject: |
|
|
VadiMGP
Видимо, он этого не видел или не обратил внимания. Хорошо бы пнуть его на этот счёт. Может, он твёрдо уверен, что это такая нерешаемая бага винды… _________________ Почему же, ё-моё, ты нигде не пишешь "ё"? |
|
Back to top |
|
 |
VadiMGP
Joined: 21 Mar 2007 Posts: 1625
|
(Separately) Posted: Wed Jun 04, 2008 18:51 Post subject: |
|
|
CaptainFlint
Скорее всего, не заметил.
Кстати, я проверил - в кратком режиме (т.е. когда лист multicolumn) количество скролловых позиций равно числу столбцов. Поэтому там все работает (видимо, пока не будет 65535 столбцов ). |
|
Back to top |
|
 |
CaptainFlint

Joined: 14 Dec 2004 Posts: 6197 Location: Москва
|
(Separately) Posted: Wed Jun 04, 2008 21:42 Post subject: |
|
|
VadiMGP wrote: | Кстати, я проверил - в кратком режиме (т.е. когда лист multicolumn) количество скролловых позиций равно числу столбцов. Поэтому там все работает (видимо, пока не будет 65535 столбцов ). |
Вполне возможно. Но я сейчас попробовал список из 66 с гаком тысяч файлов: в подробном режиме не скроллится, а в кратком — скроллится, даже если я уменьшаю высоту файловых панелей до одной строчки. Тогда, по идее, число колонок становится равным числу файлов, т.е. превышает лимит, но скролл продолжает работать. Что-то тут нечисто… "Чую бесовщину, но обосновать не могу" © Л. Каганов.  _________________ Почему же, ё-моё, ты нигде не пишешь "ё"? |
|
Back to top |
|
 |
VadiMGP
Joined: 21 Mar 2007 Posts: 1625
|
(Separately) Posted: Wed Jun 04, 2008 22:15 Post subject: |
|
|
CaptainFlint
Хм. Действительно бесовщина. Чур меня. Мне аж интересно стало, я набросал программку, которая генерит лист в сто тыщ элементов. Мышой не скроллится. Добавил обработчик WM_MOUSEWHEEL
Code: | BOOL CWListBox::OnMouseWheel(UINT nFlags, short zDelta, CPoint pt)
{
if (zDelta<0)
SendMessage(WM_VSCROLL, MAKELONG(SB_PAGEDOWN, 0), 0L);
else
SendMessage(WM_VSCROLL, MAKELONG(SB_PAGEUP, 0), 0L);
return 1;
} |
И все заскроллилось за милую душу.
А если перевести лист в multicolumn, то скроллится без всяких дополнительных обработчиков.
Единственное, что приходит в голову это то, что в есть какая-то разница в обработке самим листом вертикального и горизонтального скроллирования. В любом случае - не суть. То, чего не хватает в ТС исправляеся несколькими строчками кода. Можно и попинать. |
|
Back to top |
|
 |
DeathStalker

Joined: 01 Sep 2006 Posts: 331 Location: Санкт-Петербург
|
(Separately) Posted: Thu Jun 05, 2008 09:59 Post subject: |
|
|
Правильно попинайте его)) Хоть и нечасто в панели ТС бывает такое кол-во файлов, но когда бывает такая мелочь как не работа скролинга колесом мыши раздражает.
Колесо мыши вообще очень заразная штука, тут недавно посидел за старой мышью без колесика, так заметил что постоянно пытаюсь крутить не существующее колесо  _________________ Гугль - это Матрица, чем меньше его спрашивать, тем слабее будут машины во время Великой Битвы
TC10.00b6 x86 Windows 10 x64 (Windows 7 x64) |
|
Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|