31. Martin - 26 Декабря, 2022 - 04:46:29 - перейти к сообщению
Zireael , а как средний квадратик из трех нажать который окно меньше делает?
32. Zireael - 26 Декабря, 2022 - 04:50:24 - перейти к сообщению
Цитата:
а как средний квадратик из трех нажать
Стандартные кнопки это: свернуть, развернуть, закрыть. Что за квадратики в вашем приложении никто, кроме вас, не знает.
33. Martin - 26 Декабря, 2022 - 04:55:07 - перейти к сообщению
Zireael , развернуть) просто навожу на него мышкой в подсказке написано "свернуть в окно". Забыл, что его ещё развернуть называют
34. Zireael - 26 Декабря, 2022 - 05:03:30 - перейти к сообщению
Цитата:
развернуть
CODE:
#define SC_MAXIMIZE 0xF030
win w = window (-1, "Notepad", -1); // окно, блокнот в данном случае
if(w) // если найдено
{
sendmessage(WM_SYSCOMMAND, SC_MAXIMIZE, 0, w); // развернуть
}
else messagebox("Окно не найдено");
win w = window (-1, "Notepad", -1); // окно, блокнот в данном случае
if(w) // если найдено
{
sendmessage(WM_SYSCOMMAND, SC_MAXIMIZE, 0, w); // развернуть
}
else messagebox("Окно не найдено");
35. Martin - 26 Декабря, 2022 - 05:19:30 - перейти к сообщению
Zireael , Не то (
Когда окно развернуто на весь экран его можно
1. Свернуть 2. Свернуть в окно 3. Закрыть.
Вот нужно чтобы когда оно на весь экран оно стало меньше.
Этот код разворачивает окно на весь экран, а как обратно его вернуть?
(Добавление)
Zireael , Всё разобрался) спасибо за код, понял как оно работает.
Когда окно развернуто на весь экран его можно
1. Свернуть 2. Свернуть в окно 3. Закрыть.
Вот нужно чтобы когда оно на весь экран оно стало меньше.
Этот код разворачивает окно на весь экран, а как обратно его вернуть?
(Добавление)
Zireael , Всё разобрался) спасибо за код, понял как оно работает.
CODE:
#define SC_RESTORE 0xF120
win w = window (-1, "Notepad", -1); // окно, блокнот в данном случае
if(w) // если найдено
{
sendmessage(WM_SYSCOMMAND, SC_RESTORE, 0, w); // восстановить окно
}
else messagebox("Окно не найдено");
#define SC_RESTORE 0xF120
win w = window (-1, "Notepad", -1); // окно, блокнот в данном случае
if(w) // если найдено
{
sendmessage(WM_SYSCOMMAND, SC_RESTORE, 0, w); // восстановить окно
}
else messagebox("Окно не найдено");
36. Zireael - 26 Декабря, 2022 - 05:28:00 - перейти к сообщению
Цитата:
восстановить окно
Так и надо было сразу написать.
37. Martin - 26 Декабря, 2022 - 06:00:32 - перейти к сообщению
Zireael , Да я не знал, как оно называется, но зато по вашим примерам понял где, что искать, спасибо.
38. Vous - 22 Февраля, 2023 - 01:56:55 - перейти к сообщению
Нужно добавить BM_GETCHECK
Актуально доя чек боксов.
Суть возвращает состояние флажка переключателя или флажка.
Код возврата
BST_CHECKED - Установлен флажок кнопки.
BST_UNCHECKED - Флажок снят.
P/S Помогите плиз с траблом. В программе есть чек бокс максимум что смог найти это
postmessage(BM_CLICK, 0, 0, w); //Нажать в поле галки чек бокса
в идеале нужна осознанная команда чтоб только ставилась галка или только снималась.
Либо условие со ссылкой на контрол если нет галки поставить и др. вариант если стоит то снять.
Актуально доя чек боксов.
Суть возвращает состояние флажка переключателя или флажка.
Код возврата
BST_CHECKED - Установлен флажок кнопки.
BST_UNCHECKED - Флажок снят.
P/S Помогите плиз с траблом. В программе есть чек бокс максимум что смог найти это
postmessage(BM_CLICK, 0, 0, w); //Нажать в поле галки чек бокса
в идеале нужна осознанная команда чтоб только ставилась галка или только снималась.
Либо условие со ссылкой на контрол если нет галки поставить и др. вариант если стоит то снять.
39. Zireael - 22 Февраля, 2023 - 02:09:00 - перейти к сообщению
Цитата:
Нужно добавить BM_GETCHECK
Куда добавить? Если в ваш код, то выкладывайте код.
40. Vous - 22 Февраля, 2023 - 02:26:05 - перейти к сообщению
Zireael пишет:
Цитата:
Нужно добавить BM_GETCHECK
Куда добавить? Если в ваш код, то выкладывайте код.
Прошу сильно не пинать я в Кибор всего неделю осваиваю.
код
activate (window ("Отправить в УТМ", "TCheckBox", -1)); // Активирует контрол
win w=window ("Отправить в УТМ", "TCheckBox", -1); // Передаем имя контрола переменой W
postmessage(BM_GETCHECK, 0, 0, w) // кликаем в чек бокс (если галки небыло будет) (если галка была то уйдет)
Дайте кусок кода чтобы ставить или снимать галку осознано
то есть нужен анализ состояния чек бокса перед установкой галки.
именно программно без анализа экрана (скрина) поиска изображения.
К примеру мне нужно поставить галку и если она стоит уже то ничего не делаем.
И наоборот если галки в контроле нет то ставим.