![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 18.05.2011
Сообщений: 53
|
![]()
Приветствую всех, пытаюсь нажать на кнопку да, но никак не выходит
Код:
Код:
так же ещё вопрос, при потере фокуса в моём приложение, не работает SetCursorPos, почему так происходит? Заранее благодарен за ответы! Последний раз редактировалось paxan86; 02.03.2025 в 12:16. |
![]() |
![]() |
![]() |
#2 |
ПШП
Участник клуба
Регистрация: 15.07.2013
Сообщений: 1,926
|
![]()
А просто на своем компьютере вы пробовали использовать CCleaner? Он там работает?
А то Вики говорит что "В начале 2024 года компания Avast, владелец CCleaner, перестала оказывать услуги в России и Беларуси в связи с санкциями Евросоюза. Таким образом, CCleaner не работает на территории России и Беларуси". |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 18.05.2011
Сообщений: 53
|
![]()
CCleaner прекрасно работает, проблема в том что клика просто не происходит, вручную диалог реагирует отлично....
|
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 16.05.2024
Сообщений: 186
|
![]()
у меня Lazarus, но думаю в Delphi будет работать.
Я сделал первую программу - одна форма с заголовком окна (caption) 'appForm1'. На этом окне одна кнопка с надписью 'myButton1'. Если нажать на эту кнопку, то что-то делается. Как из другой программы нажать на эту кнопку? Я сделал вторую программу, вот её текст. На её главном окне одна кнопка, щёлкаем по ней и выполняется код отправки сообщения в первую программу, которая должна в этот момент быть запущена. Код:
Последний раз редактировалось DeepFlake; 03.03.2025 в 13:07. |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 18.05.2011
Сообщений: 53
|
![]()
Спасибо! , попробую , основное различие в строчке postmessage, вечером испытаю
|
![]() |
![]() |
![]() |
#6 | |
Пользователь
Регистрация: 18.05.2011
Сообщений: 53
|
![]() Цитата:
Код:
Снимок экрана 2025-03-05 222943.jpg Последний раз редактировалось paxan86; 05.03.2025 в 20:42. |
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 17.01.2020
Сообщений: 14
|
![]() Код:
Если не сработает, можно попробовать Энтер кнопке послать: Код:
|
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 16.05.2024
Сообщений: 186
|
![]()
Не знаю получилось или нет у автора темы, я напишу про результат своего эксперимента.
Похоже что диалоговое окно, которое показывает программа автора, создана при помощи вызова MessageBox, а для кнопок в системных диалогах функция FindWindowEx не работает. Однако эти кнопки можно обнаружить перебором идентификаторов через GetDlgItem(), в принципе, быстро делается. Сделал первую программу, которая создаёт MessageBox с заголовком 'stddlg' и с кнопками Yes, No, Cancel. Надо нажать кнопку Yes на ней из другой программы. Код:
Это нажатие на кнопку на диалоге, на которой фокус. В моей программе фокус на кнопке Yes, вот она нажимается, если надо нажать на другую, то надо перед этим отправить сообщение TAB, чтобы перейти на другую кнопку. Когда передаём сообщение через SendDlgItemMessage(), то там надо указать идентификатор любой кнопки на диалоге, а нажмётся всё равно та, на которой фокус. Код:
|
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 17.01.2020
Сообщений: 14
|
![]()
Тоже люблю эксперименты. Кнопка в MessageBox находится. На VK_RETURN кнопка не реагирует, а вот на VK_SPACE - очень даже. Даже та, которая не в фокусе. Код для Lazarus:
Код:
|
![]() |
![]() |
![]() |
#10 |
Форумчанин
Регистрация: 16.05.2024
Сообщений: 186
|
![]()
cllc, какая операционная система?
На Паскале битовое сложение + , а не or. Почему сдвиг делаете на 16 бит? а в 32-х и 64-х битных системах разве тоже на 16 ? Последний раз редактировалось DeepFlake; 07.03.2025 в 18:36. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Нажать кнопку | scroyler | Работа с сетью в Delphi | 6 | 24.03.2013 19:05 |
Нажать кнопку | scroyler | Работа с сетью в Delphi | 0 | 05.11.2012 11:40 |
нажать кнопку | Screame | Microsoft Office Excel | 1 | 30.08.2009 22:20 |
Нажать кнопку | Dron_kss | Работа с сетью в Delphi | 1 | 28.03.2009 17:33 |
Автосатически нажать OK в диалоге | eglantier | Microsoft Office Excel | 2 | 16.03.2009 16:27 |