Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Скролинг в Vba

3.8K
14 февраля 2005 года
corvin
31 / / 04.07.2004
Где-то я встречал есть макрос для того чтобы стал доступен склолинг в окне листинга программы.
Если это так, где его можно найти?
258
14 февраля 2005 года
SergeySV
1.5K / / 19.03.2003
Не совсем так, если ты про окно редактора VBA, то тебе подойдут любые универсальные дрова(или расширенные родные), которые работают по следующему принципу: висит в памяти (и еще как правило в трее) и перехватив событие о повороте колесика мыши, определяет окно под курсором и посылает ему сист. сообщения WM_VSCROLL/WM_HSCROLL (т.е. идет имитация щелканья по скролу окна)

Я в свое время писал и выкладывал здесь код для прокрутки ListBox - элемента управления Excel'я. (он в исходниках в офисных программах валяется, че-то ща не работает ссылка на раздел - исходники). Но там несколько другая фича. Listbox/Combobox из MSForm не являются стандратными Listbox/Combobox, которые используются во всех других программах windows. За рисование содержимого ListBox отвечает сам Excel. Т.е. когда ты щелкаешь мышкой по скролу в таком ListBox'е, то событие об этом приходит в Excel (а до самого ListBox ничего не доходит) и именно Excel и занимается перерисовкой содержимого ListBox'а. Поэтому универсальные дрова в этом случае и не подходят, потому что бесполезно посылать такому ListBox'у сообщения WM_VSCROLL/WM_HSCROLL, оно все равно на него не реагирует. Я сумел эту проблему обойти посылая напрямую этому окно сообщения WM_KEYDOWN с кодами клавиш pgdn/pgup, стрелки вниз/вверх - такие сообщения, слава богу, ListBox от MSForm самостоятельно обрабатывает.
459
15 февраля 2005 года
gacol
273 / / 12.02.2003
Цитата:
Originally posted by corvin
Где-то я встречал есть макрос для того чтобы стал доступен склолинг в окне листинга программы.
Если это так, где его можно найти?


Макроса нет, есть, например, такая программка

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог