По поиску ответа не нашел. Это нормально, что у одного и того же элемента может быть разный handle (например, кнопки Пуск)? Хочу сделать штуку, которая, например, при наведении на кнопку Пуск запускала скринсейвер. Но получается что на каждом компе кнопка Пуск, а равно любой другой элемент имеют свой handle. Что делать? Может, есть другой способ получить имя элемента под курсором и по условию сделать действие?
Этот топик читают: Гость
|
Ответов: 3
Рейтинг: 0
|
|||
| карма: 0 |
|
|
Ответов: 205
Рейтинг: 44
|
|||
| карма: 0 |
| ||
| файлы: 1 | code_14870.txt [1.5KB] [254] |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
|
serenitatis писал(а): Это нормально, что у одного и того же элемента может быть разный handle (например, кнопки Пуск)?да serenitatis писал(а): Что делать? искать окно по названию и имени класса |
|||
| карма: 26 |
|
|
Ответов: 3
Рейтинг: 0
|
|||
|
Спасибо за ответы. Я решил решать это дело с помощью координат
|
|||
| карма: 0 |
|
|
Ответов: 2467
Рейтинг: 698
|
|||
|
serenitatis, не у всех кнопка пуск в нижнем левом углу.
|
|||
| карма: 11 |
|
|
Ответов: 3
Рейтинг: 0
|
|||
|
Теперь речь идет просто об углу экрана, без привязки к чему-либо.
|
|||
| карма: 0 |
|
|
Ответов: 1397
Рейтинг: 50
|
|||
|
А не проще найти окно "Пуск"? Как писал Dilma
|
|||
| карма: 0 |
|
|
Разработчик
Ответов: 26322
Рейтинг: 2147
|
|||
|
Валерий писал(а): А не проще найти окно "Пуск"?Как-то, вот так. Пример показывает нажатие клавиши Enter на Меню Пуск, и не важно, как оно будет называться А вот иммитация нажатия ЛКМ на Меню Пуск |
|||
| карма: 22 |
|
|
Ответов: 1309
Рейтинг: 49
|
|||
| карма: 3 |
| ||
| файлы: 1 | code_31987.txt [1.5KB] [411] |
|
Разработчик
Ответов: 26322
Рейтинг: 2147
|
|||
|
Aziz писал(а): не заработал ваш вариантЭто под XP было ------------ Дoбавленo в 16.33: Вот так будет работать под Win7 |
|||
| карма: 22 |
|
|
Ответов: 1309
Рейтинг: 49
|
|||
|
Действительно работает, спасибо. Может еще подскажите, как определить что мышь находится над попап-окном пускового меню, не прибегая к названиям, которые в разной локализации могут отличаться? Нужно для моей проги которая постоянно себя поверх всех окон помещает, что мешает всплытию меню пуск. Надо соответственно определить что под мышью меню пуска и отключить попап.
------------ Дoбавленo в 21.18: Я полагаю, нужно будет определить хендл трея и всех его потомков, после чего проверять хендл под курсором на предмет совпадения с потомками? |
|||
| карма: 3 |
|
|
Разработчик
Ответов: 26322
Рейтинг: 2147
|
|||
|
Aziz писал(а): Надо соответственно определить что под мышью меню пуска и отключить попап.На тебе прогу WinInfo, она поможет тебе найти нужный класс -- wininfo_1011.sha Можешь использовать оттуда перехватчик движения мыша |
|||
| карма: 22 |
| ||
| файлы: 1 | wininfo_1011.sha [4.6KB] [563] | ||
| Голосовали: | foksov |
|
Ответов: 1376
Рейтинг: 198
|
|||
|
nesco, +2 позже, суточный лимит исчерпан
nesco писал(а): перехватчик движения мыша |
|||
| карма: 1 |
|
|
Ответов: 1309
Рейтинг: 49
|
|||
|
nesco, спасибо.. У меня лимит + тоже исчерпан..
------------ Дoбавленo в 22.56: Интересно, класс SysListView32 встречается только в меню старт? Если не только, то сложно будет идентифицировать.. |
|||
| карма: 3 |
|
|
Разработчик
Ответов: 26322
Рейтинг: 2147
|
|||
|
foksov писал(а): Нельзя ли его встроить в MouseEvent?Есть отдельный такой компонент, но он не штатный -- gmousehook_102.zip |
|||
| карма: 22 |
| ||
| файлы: 1 | gmousehook_102.zip [1.7KB] [294] | ||
| Голосовали: | foksov |



Поиск
Друзья
Администрация