Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Win API


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / WinAPI

Выпуск № 447
от 04.08.2007, 22:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 416, Экспертов: 37
В номере:Вопросов: 1, Ответов: 2


Вопрос № 96754: Здравствуйте, Уважаемые Эксперты. Как перехватывать нажатие колёсика мыши(именно нажатие как 3 кнопки) и блокировать стандартные действия, взамен же делать своё действие? И как вообще отслеживать действия мыши, например выделение текста?...

Вопрос № 96.754
Здравствуйте, Уважаемые Эксперты.
Как перехватывать нажатие колёсика мыши(именно нажатие как 3 кнопки) и блокировать стандартные действия, взамен же делать своё действие? И как вообще отслеживать действия мыши, например выделение текста?
Отправлен: 30.07.2007, 21:51
Вопрос задал: Чурсанов Евгений Ильич (статус: Студент)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Valodya
Здравствуйте, Чурсанов Евгений Ильич!
При нажатии средней кнопки мыши посылается сообщение MK_MBUTTON. Соответственно если обработать это сообщение в WndProc, то можно переопределить/назначить своё действие(только для окон созданных при помощи Win API).
По поводу отслеживания действий мыши рекомендую почитать следующую статью: http://www.lib.csu.ru/DL/bases/prg/frolov/books/bsp/v11/ch6.htm
Отслеживание выделения текста может оказаться не совсем тривиальной задачей, тем более из Вашего вопроса не совсем понятно где находится выделяемый текст.
Ответ отправил: Valodya (статус: 1-ый класс)
Ответ отправлен: 30.07.2007, 23:27

Отвечает: Mishell
Здравствуйте, Чурсанов Евгений Ильич!
Для перехвата нажатия средней кнопки мыши отслеживайте сообщения WM_MBUTTONDOWN, WM_MBUTTONUP
чтобы отменить стандартные действия верните 0 как результат оконной процедуры, если не надо отменять (т.е. кроме своих деяствий выполнять стандартные) - то можно примерно так Result:=DefWindowProc(wnd,msg,wparam,lparam); // это пример на Дельфи
Выделение текста - это не сообщение мыши - тут надо отслеживать сообщение контрола, что-то типа EN_SELCHANGE
Ответ отправил: Mishell (статус: 2-ой класс)
Ответ отправлен: 31.07.2007, 11:16


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Email: support@rusfaq.ru, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.54 beta от 01.08.2007
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное