|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
29.04.2009, 10:12 | #1 |
Пользователь
Регистрация: 20.06.2008
Сообщений: 95
|
Скролирование списка колесом мыши в VBA
Доброго времени суток! Написал небольшое приложение на VBA 6.5 для работы с данными в Excel (MS Office 2007). Необходимо скролирование списка (например в ComboBox) с помощью колеса мыши. Нагуглил, что Visual Basic 6.0 не имеет встроенной поддержки колеса мыши. Микрософт на http://support.microsoft.com/kb/837910/ru пишет, что надо скачать и установить патч. Скачал и установил - не работает Подскажите как решить проблемму. Начальник хочет скролирование колесом, а начальникам надо угождать Заранее спасибо!
Не забывайте оставлять отзывы (кнопочка в левом нижнем углу сообщения)
|
29.04.2009, 10:22 | #2 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Попробуйте что-то вроде этого:
Код:
|
29.04.2009, 12:41 | #3 |
Пользователь
Регистрация: 20.06.2008
Сообщений: 95
|
Как-то все это очень сложно. Насколько я понял, бегло посмотрев листинг, ты только определяешь факт кручения колеса, а обработку листания списка не привел. Что за странные значения параметра wParam? Откуда такие числа? А объявления типа:
Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long предполагают наличие какой-то внешней библиотеки "user32"?
Не забывайте оставлять отзывы (кнопочка в левом нижнем углу сообщения)
|
02.05.2009, 12:23 | #4 |
Пользователь
Регистрация: 20.06.2008
Сообщений: 95
|
А еще есть какие-нибудь варианты?
Не забывайте оставлять отзывы (кнопочка в левом нижнем углу сообщения)
|
02.05.2009, 13:01 | #5 | |||||
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Цитата:
Проблема в том, что элементы управления из библиотеки FM20 - все эти листбоксы и комбобоксы - не перехватывают (точнее, не обрабатывают) события вращения колеса мыши. Поэтому нам остаётся либо использовать другие элементы управления аналогичного назначения (если хорошо поискать, можно что-нибудь найти), либо самостоятельно перехватывать системные сообщения в поисках команды скроллинга. Цитата:
Поэтому установка этого патча не поможет. Цитата:
Цитата:
Цитата:
Просто берешь весь этот непонятный код, и вставляешь его в отдельный модуль. Потом добавляешь пару строк в код формы, и всё начинает работать. Если устроит такой вариант - выложи файл, я попробую приспособить этот код к твоей форме. |
|||||
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
TСhart, клик мыши и координаты XY, Определение координат оси при клике мыши | Aravild | Компоненты Delphi | 1 | 31.01.2009 16:28 |
Сортировка списка... | Arkuz | Помощь студентам | 2 | 11.05.2008 00:53 |
Научите, пожалуйста, работать с колесом мыши и DBGrid'ом. | фЁдОр | БД в Delphi | 16 | 11.03.2008 13:44 |