|
Перехватить mouse click
|
|||
---|---|---|---|
#18+
Есть ли возможность отловить (перехватить) нажатие на кнопку мыши на любом объекте. Т.е. нажали на любой объект - отработала какая-то функция. Но в самом объекте на click не должно быть вызова этой функции. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.10.2010, 10:35 |
|
Перехватить mouse click
|
|||
---|---|---|---|
#18+
Riska , т.е. чтобы "нажатие на кнопку мыши на любом объекте" не прописывать в каждом объекте? - если это для сервиса "Что это?" с курсором ввиде вопросика, то решение есть. или именно чтобы не было в событии "click" у этих объектов, а просто в другом событии? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.10.2010, 11:44 |
|
Перехватить mouse click
|
|||
---|---|---|---|
#18+
AIS, Что-то вроде этого. Во всех окнах объекты расставляются динамически (это делают объекты nvuo) - логика существует отдельно от интерфейса. Проблема в том, что невозможно понять, где что находится. Т.е. нужно, например, элементарно добавить messagebox на кнопку. Открываешь окно, а там кнопки нет. Нужно рыскать по nvuo и искать, где она рисуется (имя кнопки не известно). Появилась идея добавить какую-то функцию, которая будет сообщать хотябы имя объекта. Т.е. кликаем на какю-то хитрую комбинацию клавиш (типа Ctrl+Shift+rbclick) и получаем имя объекта. После этого, по имени, объект легко можно будет найти в nvuo. Второе применение - Help на объекте. Вот это: /topic/193493&hl=#6991595 Только в данном приложении нет унаследованных объектов. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.10.2010, 12:21 |
|
Перехватить mouse click
|
|||
---|---|---|---|
#18+
можно посмотреть в сторону Windows API ф-ций HWND SetCapture(HWND hWnd); http://msdn.microsoft.com/en-us/library/ms646262%28VS.85%29.aspx и BOOL WINAPI ReleaseCapture(void); http://msdn.microsoft.com/en-us/library/ms646261%28v=VS.85%29.aspx Но как по мне, проще прописать в каждом базовом объекте код для обработки нужного события. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.10.2010, 14:25 |
|
Перехватить mouse click
|
|||
---|---|---|---|
#18+
Dmitry., Эти функции работают только с известным объектом. Т.е. перехват сработает только если мы пропишем его в событии объекта. А мне нужно что-то глобальное - на открытии приложения. Что-то вроде HttpModulя в .Net. Нажали на мышку - сработала API функция, запустилась наша функция, а потом уже отработалось событие объекта. Но как по мне, проще прописать в каждом базовом объекте код для обработки нужного события. ЛЕНЬ! :) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.10.2010, 15:37 |
|
Перехватить mouse click
|
|||
---|---|---|---|
#18+
Dmitry.можно посмотреть в сторону Windows API ф-ций HWND SetCapture(HWND hWnd); http://msdn.microsoft.com/en-us/library/ms646262%28VS.85%29.aspx и BOOL WINAPI ReleaseCapture(void); http://msdn.microsoft.com/en-us/library/ms646261%28v=VS.85%29.aspx Но как по мне, проще прописать в каждом базовом объекте код для обработки нужного события. можно посмотреть в сторону WM_NOTIFY или WM_PARENTNOTIFY messages... ... |
|||
:
Нравится:
Не нравится:
|
|||
04.10.2010, 19:45 |
|
Перехватить mouse click
|
|||
---|---|---|---|
#18+
Riska , а какая последовательность событий: т.е. с какого момента надо это отслеживать? - если это точка входа в любой текущей ситуации, то - это проблема; а если это - в конкретном случае, тогда озвучьте подробнее это событие... ... |
|||
:
Нравится:
Не нравится:
|
|||
04.10.2010, 20:17 |
|
Перехватить mouse click
|
|||
---|---|---|---|
#18+
Ларчик просто открывался. В родительские окна на событии "key" нужно добавить вызов функции по нажатию клавиш клавиатуры, а не мыши. Подводим мышку к интересующему объекту и жмем (Ctrl + Shift + F12). ... |
|||
:
Нравится:
Не нравится:
|
|||
18.10.2010, 10:27 |
|
Перехватить mouse click
|
|||
---|---|---|---|
#18+
RiskaЛарчик просто открывался. В родительские окна на событии "key" нужно добавить вызов функции по нажатию клавиш клавиатуры, а не мыши. Подводим мышку к интересующему объекту и жмем (Ctrl + Shift + F12). Ларчик, да не тот. ;) RiskaЕсть ли возможность отловить (перехватить) нажатие на кнопку мыши на любом объекте... ... |
|||
:
Нравится:
Не нравится:
|
|||
18.10.2010, 11:17 |
|
|
start [/forum/topic.php?fid=15&msg=36904600&tid=1335848]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
143ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
others: | 11ms |
total: | 256ms |
0 / 0 |