70 / 47 / 5
Регистрация: 10.01.2017
Сообщений: 1,849
|
|||||||||||
1 | |||||||||||
Нажать кнопку на калькуляторе с SendMessage30.08.2020, 19:12. Показов 1183. Ответов 11
Метки нет (Все метки)
Здравствуйте,
Пытаюсь эмулировать нажатие кнопки на калькуляторе. Так как реальных кнопок класса Button в калькуляторе нет, и как подсказывали в предыдущих темах скорее всего кнопки нарисованные. Смотрю через spy++ какие сообщения посылаются в окно калькулятора при нажатии к примеру на цифру 8:
Добавлено через 1 час 32 минуты Точнее самое сообщение в окно приходит. После запуска кода, в spy++ видно, что приходит аналогичное сообщение, но сама цифра 8 - не нажимается.
1
|
30.08.2020, 19:12 | |
Ответы с готовыми решениями:
11
Как нажать кнопку в калькуляторе на впс сервере? програмно нажать TAB через SendMessage Как можно нажать программно нажать на кнопку, у которой нет id? Как описать в C++Builder 6 в калькуляторе кнопку +/-? |
6579 / 4564 / 1843
Регистрация: 07.05.2019
Сообщений: 13,726
|
||||||
30.08.2020, 21:47 | 2 | |||||
И показывает те же координаты, которые ты отправил?
1
|
70 / 47 / 5
Регистрация: 10.01.2017
Сообщений: 1,849
|
|
30.08.2020, 21:49 [ТС] | 3 |
Почему то, если я прямо указываю 191 и 492 в lparam, то в spy++ сами координаты приходят больше.
160 и 395 - я подобрал, чтобы в spy++ приходили именно 191 и 492. Не знай почему так.
0
|
6579 / 4564 / 1843
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
30.08.2020, 21:52 | 4 |
А просто WM_LBUTTONDOWN не пробовал отправлять?
0
|
70 / 47 / 5
Регистрация: 10.01.2017
Сообщений: 1,849
|
|
30.08.2020, 21:55 [ТС] | 5 |
0
|
6579 / 4564 / 1843
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
30.08.2020, 22:01 | 6 |
https://docs.microsoft.com/en-... buttondown
Добавлено через 3 минуты Возможно, придётся использовать SendInput
1
|
70 / 47 / 5
Регистрация: 10.01.2017
Сообщений: 1,849
|
|
30.08.2020, 22:05 [ТС] | 7 |
Если за место message отправлять просто WM_LBUTTONDOWN - тоже не реагирует.
SenInput да можно использовать, но он эмулирует сам курсор, что менее удобно. Как же калькулятор все таки обрабатывает эти сообщения. Прям загадка.
0
|
6579 / 4564 / 1843
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
30.08.2020, 22:23 | 8 |
Это .NET, там всё по-другому работает
Добавлено через 14 минут Кстати, а ты активируешь окно калькулятора прежде, чем отправить ему сообщение? Возможно они просто не отрабатываются на неактивном окне.
1
|
70 / 47 / 5
Регистрация: 10.01.2017
Сообщений: 1,849
|
|
30.08.2020, 22:30 [ТС] | 9 |
Я пробывал и в неактивном, и в активном и поедварительно по кнопкам кликал, и все равно ноль рескции.
То есть, я запускал код с паузой, открывал справа spy, слева калькклятор, кликал по 8ке, в spy наблюдал сообщен е с wm_WM_PARENTNOTIFY , через несколько секунд срабатывал код, и прям под это сообщение в spy++ приходило абсолютно точно такое же. Но от калькулятора ноль реакции.
0
|
6579 / 4564 / 1843
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
30.08.2020, 22:44 | 10 |
-----
0
|
70 / 47 / 5
Регистрация: 10.01.2017
Сообщений: 1,849
|
|
31.08.2020, 10:48 [ТС] | 11 |
А не подскажите, что за код сообщений в spy++ под названием R:
Что то не понятно, что это за ответное сообщение для SendMessage. Ответное от кого ?
0
|
6579 / 4564 / 1843
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
31.08.2020, 10:56 | 12 |
Это то что возвращает функция SentMessage
Например, обработчик WM_CREATE должен вернуть 0 или -1
1
|
31.08.2020, 10:56 | |
31.08.2020, 10:56 | |
Помогаю со студенческими работами здесь
12
Как создать кнопку delete в калькуляторе 1С? SendMessage на кнопку в чужой программе вызывает диалог сохранения файла и приехали Как описать в C++Builder 6 в калькуляторе кнопку Вкл/Вык? Нажать на кнопку Нажать на кнопку Нажать на кнопку Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |