| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > SetCapture |
| Автор: Temnozor 1.7.2002, 12:12 |
| Столкнулся с такой проблемой. Для диалога (неглавного) моей программы вызываю SetCapture(). И превосходно принимаю движения мышой OnMouseMove(). Но при выходе за пределы всех окон моей проги (на территорию чужих окон) OnMouseMove перестают поступать. Это, мягко говоря, не то что я ожидал. Мне надо знать положение курсора мыши в каждый момент времени по всему экрану. Я в корне не прав или должно все это работать? Или надо пойти другим путем? P.S. Ну не Hook'ами же в конце концов мне движения мышака ловить?! P.S.2. Щас дошло только: по таймеру узнавать текущее положение мыши. Ой не нравится мне эта идея... |
| Автор: Baa 1.7.2002, 14:17 |
| If the mouse cursor is over a window created by another thread, the system will direct mouse input to the specified window only if a mouse button is down. Проверяем: зажимаем кнопку мыши в нашем диалоге и тащим за пределы окна |
| Автор: Temnozor 5.7.2002, 08:43 |
| Мда. Thanks. Действительно. Ну я не могу юзверя заставлять кнопку удерживать... Придется по таймеру брать позицию курсора грызуна... |
| Автор: TwoK 5.7.2002, 09:34 |
| А почему бы не хук? Правда, я тут как-то хук на мышь написал... И драйвера моего NetScroll+ приказали долго жить. То есть вопрос стоял так: либо дрова NetScroll, либо хук |
| Автор: Temnozor 5.7.2002, 09:45 |
| С хуками круто конечно, но разбиться несколько дольше (время!время!) и никогда не знаешь откуда стрельнет. |
| Автор: Baa 5.7.2002, 12:24 |
| Эмулируй удержание кнопы мыши З.Ы. Притом, чтобы другое окно не стало активным, зажать кнопку надо на своем окне %) |
| Автор: Fantasist 6.7.2002, 15:29 |
| Совершенно верно. Либо драйвер либо хук. В том смысле, что либо пиши драйвер отслеживающий мышь либо ставь хук. А так никакие тебе сообщения виндос присылать не будет. Таймер это, конечно, круто, но сам понимаешь... Хук ведь для того и придумали. А если времени нет, так у меня, пожалуй, парочка готовых есть. |
| Автор: Wowa 6.7.2002, 17:57 | ||
а если эмулировать? |
| Автор: Baa 6.7.2002, 18:17 | ||
То он больше нигде не кликнет ;\ Или если вдруг сообщения пройдут, в чем я сомневаюсь, других аномалий найдется уйма...вобщем, это не решение. |
| Автор: Temnozor 8.7.2002, 09:11 |
| Лады. Сделаю способом до которого руки дойдут. Спасибо всем. |