|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
08.08.2009, 22:58 | #1 |
Участник клуба
Регистрация: 28.07.2009
Сообщений: 1,510
|
Отрицательно значение у wParam?
Передаю приложения прокрутку колеса мыши:
С кручение мыши вперёд получается: Код:
Код:
Код:
Вот описание wParam для MouseWheel из справки: Код:
|
09.08.2009, 00:29 | #2 |
Форумчанин
Регистрация: 26.07.2009
Сообщений: 216
|
Заменять системные сообщения своими довольно затруднительно - необходимо хорошо знать структуру сообщения (TWMMouseWheel описана в модуле Messages.pas).
Что-то не припоминаю чтобы применялся такой экзотический способ работы с колесом. Как правило, системные сообщения от колеса мыши обрабатывают в оконной процедуре и нет никакой необходимости посылать форме или компонентам собственные сообщения. Все равно у вас это не получится так как это делает винда. А MakeWParam макрос, который в параметрах принимает только беззнаковые значения (The MAKEWPARAM macro creates an unsigned 32-bit value for use as a wParam parameter in a message), от того и ошибка. |
09.08.2009, 00:38 | #3 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
Тю, возьми да переделай
Код:
пыщь
|
09.08.2009, 01:03 | #4 |
Участник клуба
Регистрация: 28.07.2009
Сообщений: 1,510
|
2Karabash, чего-то я Вас плохо понимаю =)
2JTG, спасибо огромное =) Работает идеально) А как работает shl? |
09.08.2009, 01:13 | #5 | |
Форумчанин
Регистрация: 26.07.2009
Сообщений: 216
|
Цитата:
Имел ввиду, что сообщения от колеса генерит винда, а обрабатываются они в приложении, а у вас как-то наоборот получается: ваше приложение посылает колесное сообщения и, видно, само же и обрабатывает. Не возбраняется, но немного странновато выглядит (в моем представлении, конечно - чего его посылать, когда есть кому это делать). |
|
09.08.2009, 01:28 | #6 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
Побитовый сдвиг влево, 16 бит = 2 байта
выполняется сначала shl затем or 0000BBBBh (hiWord) shl 16 ---------- BBBB0000h or 0000AAAAh (loWord) ---------- BBBBAAAAh _hi___lo
пыщь
|
09.08.2009, 01:40 | #7 |
Участник клуба
Регистрация: 28.07.2009
Сообщений: 1,510
|
2Karabash, Колёсное сообщения посылаю в ТВ-тюнер, чтобы уменьшить/увеличить громкость из игры/другого приложения. Не знаю что тут странного, это же винАПИ - крутя колесо мышки руками, Вы делает то же самое =)
2JTG, спасибо ещё раз =) |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Значение в DBEdit | artemavd | БД в Delphi | 1 | 15.05.2009 18:17 |
Значение операторов [ и ] | Ivan_32 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 4 | 30.11.2008 15:50 |
Значение DBLookupComboBox | MARCH | Компоненты Delphi | 58 | 16.11.2008 20:45 |
значение из подстроки | GazimagomedovM | Помощь студентам | 2 | 10.07.2008 08:50 |
среднее значение | tonic | Microsoft Office Excel | 1 | 04.01.2008 00:20 |