|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
12.11.2010, 19:03 | #1 |
Подтвердите свой е-майл
Регистрация: 07.04.2007
Сообщений: 120
|
SendMessage(BSend, BM_CLICK, 0, 0); работает только если курсор находится над кнопкой
В программе ищу хендл кнопки другого приложения. Потом отправляю сообщение
Код:
Пробовал PostMessage. Как решить проблему? |
12.11.2010, 19:08 | #2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
про кликанье тем много, смотрите сообщения WM_LBUTTONDOWN и WM_LBUTTONUP
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
12.11.2010, 19:50 | #3 |
Подтвердите свой е-майл
Регистрация: 07.04.2007
Сообщений: 120
|
Спасибо, заработало при wm_LButtonDblClk. При WM_LBUTTONDOWN и WM_LBUTTONUP тоже зависит от того на кнопке ли мышь. Хотя я не понял почему BM_CLICK не работает.
|
12.11.2010, 20:16 | #4 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Может потому что Механизм обработки этого сообщения требует еще кое-каких условий?
I'm learning to live...
|
25.11.2010, 19:22 | #5 |
Пользователь
Регистрация: 23.11.2010
Сообщений: 12
|
Чем отличаются SendMessage от PostMessage? Я пробовал обе функции, но при эмуляции нажатий кнопок клавиатуры ничего не происходило... Видимо что-то не так делал, но хэндл нужного окна совпадал с тем что показывала WinSpy, да и окно было в фокусе (что кстати необязательно для этих функций?)
|
25.11.2010, 19:38 | #6 | |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
Цитата:
|
|
17.10.2011, 17:48 | #7 |
Пользователь
Регистрация: 08.04.2011
Сообщений: 21
|
Добрый день.
Не стал открывать новую тему, лучше оживить эту. Возникла проблема. При запуске приложения с сетевого диска (добавить в доверенные не могу) появляется всем известное окно: "Не удается проверить издателя...". Оно мешает программному запуску приложения из под Delphi. Нашел кусок кода, который получает дескриптор кнопки "Выполнить" в мешающем мне окошке. Но ни одна из констант (wm_LButtonDblClk, (WM_LBUTTONDOWN, WM_LBUTTONUP), BM_CLICK) отправке объекту сообщения не дожимают нужную кнопку. Ближе всего к цели wm_LButtonDblClk, она переводит ее в "запавший" режим при наведении курсора)) В принципе удается навести на кнопку курсор и эмитировать нажатие мыши, благо окошко в одном месте всегда вылезает, но это некрасивое решение (хотя едва ли тут приходится говорить о красоте...), так как если кто будет работать, программа уведет у пользователя курсор. Может кто знает все таки, почему кнопка не нажимается? Ну или подскажите пожалуйста еще какие-нибудь пути решения проблемы, а то вот застрял на этой ерунде... |
18.10.2011, 16:06 | #8 |
Пользователь
Регистрация: 08.04.2011
Сообщений: 21
|
Тоска...
Может в коде кто какой косяк увидит: Код:
|
17.10.2017, 14:59 | #9 |
Форумчанин
Регистрация: 02.03.2013
Сообщений: 109
|
Подниму тему если не против...
Та же проблема что у davidoff_pk. Есть кнопка, ничто её не может нажать. Она не нарисованная. Win 10, 64 бит. |
17.10.2017, 15:03 | #10 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,707
|
Ну вы хоть скрин приведите или Spy++ инфу.
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Показ Form2 на над кнопкой | Shouldercannon | Общие вопросы Delphi | 5 | 01.06.2010 23:47 |
listbox над каким элементов находится курсор | Gumer | Компоненты Delphi | 3 | 13.04.2010 19:08 |
StrinGrid( выделялась ячейка над которым находится курсор) | StartMis | Общие вопросы Delphi | 1 | 29.03.2010 01:53 |
Подсветить или покрасить строку в dbgrid, над которой находится курсор | Artik | БД в Delphi | 4 | 12.06.2009 20:43 |