|
42 / 42 / 4
Регистрация: 14.09.2008
Сообщений: 683
|
||||||
Клик мышью по координатам28.11.2009, 17:06. Показов 9186. Ответов 9
Метки нет (Все метки)
Здравствуйте, прочитал статьи по эмуляции клика и такое впечатления, что у все все работает кроме меня)
В общем создал на форме 2 кнопки, по клику на 2 отсылаются сообщения клика по координатам первой кнопки. Но ничего не происходит. Иногда Фаерфокс вообще открывает ни с того ни с сего Попандер.ру сайт оО
Поскольку мне нужно в дальнейшем будет кликать не в форме, то тут посылаю на глобал, но так же пробовал и с Хендлом этой формы и все равно ничего. Просьба не советовать маус_евенты. Хочу так научится.
1
|
||||||
| 28.11.2009, 17:06 | |
|
Ответы с готовыми решениями:
9
Клик мышью по заданным координатам Клик мышью Клик мышью |
|
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
|
|
| 28.11.2009, 17:54 | |
|
сам-то понял, что сделал?
ты ВСЕМ окнам верхнего уровня посылаешь WM_MOUSEMOVE, WM_LBUTTONDOWN, WM_LBUTTONUP. само собой, если у тебя открыт FireFox, он тоже получает мув и клик мышки. что конкретно у тебя не работает? Не по теме: в сотый непечатный раз прошу: пишите вы, что хотите получить в итоге.
0
|
|
|
42 / 42 / 4
Регистрация: 14.09.2008
Сообщений: 683
|
|
| 28.11.2009, 18:41 [ТС] | |
|
Там же написано, что хочу. Хочу сделать программный клик в не формы.
Да возможно оно и посылает всем окнам верхнего уровня те действия, вопрос только почему оно их посылает свернутому фаерфоксу, причем не знаю куда оно там клацало, но после пару десятков кликов на кнопке оно открыло мне столько же окон в браузере. А то что мне нужно, для начала программно кликнуть на кнопку, так и не получилось.
0
|
|
|
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
|
||
| 28.11.2009, 18:59 | ||
|
Ну... может, msdn почитать?
или хоть справку по HWND_BROADCAST?
0
|
||
|
42 / 42 / 4
Регистрация: 14.09.2008
Сообщений: 683
|
|
| 28.11.2009, 19:13 [ТС] | |
|
Ясно спасибо, за справку HWND_BROADCAST я читал там шла речь только об видимых окнах.
Ну тем не менее даже так, то какого оно открывает сайт не каждый раз, а иногда вообще ничего не делает. А если посылать только форме, то все равно не клацает. Не нужно ли преобразовывать координаты которые я указываю в сообщение, для Экрана. Меня интересует именно этот способ, через посылку сообщений, но за инфу спасибо, я гляну.
0
|
|
|
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
|
||
| 28.11.2009, 20:19 | ||
стандартный обработчик диалогов, на котором формы работают, реагирует на BN_CLICKED и BN_DBL_CLICKED(не уверен в написании, но смысл понятен), а ты их не посылаешь. А если хочешь посылать сообщения конкретному окну - так ты сначала его хэндл определи. А потом, координаты - зачем они тебе вообще, если ты не в общую очередь сообщения отправляешь, а конкретному окну? Определяй тогда уж кнопку, и посылай сразу ей. Ей вообще на координаты наплевать. А если все-таки через общую очередь сообщений - то "цивилизованно" это только через SendInput() и делается. Не по теме: как я и писал - нефига не ясно, чего-же ты хочешь получить... :D
0
|
||
|
42 / 42 / 4
Регистрация: 14.09.2008
Сообщений: 683
|
||||||
| 28.11.2009, 21:41 [ТС] | ||||||
|
Этот код я всунул в Борланд там стоял обработчик на Клик по кнопке. Если по ней клацать мышой, то выводит сообщение. Программно ничего не выводит))
И BN_CLICKED вроде же и срабатывает при приеме сообщений лбатондаун, лбатонап. В общем кнопка это тест только для проверки работоспособности программы. В идеале программа должна клацать в любом месте по указанным координатам, чтобы там нибыло. К пример на рабочем столе ярлык выделать если надо, или в любой программе сделать клик по меню тоже по указанным координатам. Вот возьму для примера браузер и сайт вконтакте. открываю графити и хочу нарисовать точку, тогда в проге ввожу координаты и прога должна просто совершить клики в нужных местах браузера, то есть в флеш окне(графити там вроде флешовское). Или ввести координатый Меню любой программы и чтобы выпало это меню, как будто я лично кликал мышкой. Это как пример, а не основная цель моей работы. Я это делаю чисто для себя хочу понять, как работать с сообщениями эмулируя мышь. Добавлено через 55 минут Вот сидел тестил получилось выделять и запускать ярлыки на рабочем столе
0
|
||||||
|
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
|
|
| 29.11.2009, 06:59 | |
|
ну... еще раз...
ты когда-нибудь замечал, что если нажимать левую кнопку мыши медленно(типа, нажать, подержать пару секунд и отпустить), то кнопки в большинстве программ на это не реагируют? в тех-же диалогах. это происходит из того, что сообщение WM_LBUTTONDOWN воспринимается, как команда "Начать выделение", а WM_LBUTTONUP - как команда "Закончить выделение". и сообщения BN_CLICKED при этом не получается. непосредственно на WM_LBUTTONDOWN реагируют только браузеры, и рабочий стол, если на нем ActiveDesktop включен. посылай BN_CLICKED и не парься, изобретатель...
0
|
|
|
42 / 42 / 4
Регистрация: 14.09.2008
Сообщений: 683
|
||||||
| 29.11.2009, 12:43 [ТС] | ||||||
|
Так тогда может посылать WM_COMMAND с указанием notif code BN_CLICKED?!
Возможно если я так пошлю, то оно и нажмет кнопку, но тогда по сути получается бредовая программа. Я пытаюсь сделать эмуляцию в любом окне в любое место на любой компонент. А так тогда только кнопки и клацать. Так подумал, вспомнил вроде есть программы записывающие действия мыши, а потом воспроизводящие, вот по сути по типу того ходу добиться. Добавлено через 1 час 41 минуту Вот нашел статью, где написано, как кликать по нижним окнам.
Бродкаст я прочитал не шлет сообщения Чилдам. Есть ли какой-то оптимальный способ послать всем чилдам сообщения? Или только перебором?
0
|
||||||
|
42 / 42 / 4
Регистрация: 14.09.2008
Сообщений: 683
|
|
| 30.11.2009, 22:33 [ТС] | |
|
Пример чего я хочу добиться
webzanacka. ru/soft_tasker_.htm Эта программа делает клики, выделения в любых окнах, в общем, все то, что я лично делал мышкой. Как мне добиться простейшего результата повторения действий? Добавлено через 23 минуты В общем mouse_event делает, то что мне надо. По видимому чистыми PostMessage такого эффекта не добиться.
0
|
|
| 30.11.2009, 22:33 | |
|
Помогаю со студенческими работами здесь
10
Клик мышью в rdp Клик мышью в фоновом приложении Как эмулировать клик мышью Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Рецензия / Мнение/ Перевод
https:/ / **********/ gallery/ thinkpad-x220-tablet-porn-gzoEAjs
. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|