Всем приветы!
Подскажите, что то сам не могу понять, и не получается
Схема такая:
Есть окно игры window ( "Игра" ) прописано в блоке Старт. При запуске скрипт полностью выполняется -> потом я убиваю процесс в скрипте чтоб закрыть окно window ( "Игра" ) -> появляется окно лаунчера window ("Игра", "LauncherWnd", -1)
-> потом мне в лаунчере надо один раз кликнуть мышкой чтоб запустить игру обратно через некоторое время, но он не видит окно и мышка кликает по рабочему столу а не в окне лаунчера -> после запуска игры надо
чтоб скрипт продолжал работать в окне игры window ( "Игра" ). Но если я запускаю игру из лаунчера в ручную, скрипт не работает. Предпологаю что не видит окно игры.
Вопрос: Как мне активировать окно чтоб мышка кликала именно в окне лаунчера window ("Игра", "LauncherWnd", -1), и как сделать чтоб скрипт продолжал работать в окне игры window ( "Игра" ) после перезапуска?
Окно игры и окно лаунчера разные по размерам, всё делаю в Визуальном редакторе.
1. Skillem - 29 Марта, 2023 - 12:19:32 - перейти к сообщению
2. Ilya001 - 29 Марта, 2023 - 12:23:51 - перейти к сообщению
activate(/*нужное окно*/); не подойдет?
Для активации и передаче фокуса перекрытому окну или конкретному контролу существует функция:
activate(wind);
В виде параметра принимает указатель на окно.
Для активации и передаче фокуса перекрытому окну или конкретному контролу существует функция:
activate(wind);
В виде параметра принимает указатель на окно.
3. Skillem - 29 Марта, 2023 - 13:40:31 - перейти к сообщению
Ilya001 пишет:
activate(/*нужное окно*/); не подойдет?
Для активации и передаче фокуса перекрытому окну или конкретному контролу существует функция:
activate(wind);
В виде параметра принимает указатель на окно.
Для активации и передаче фокуса перекрытому окну или конкретному контролу существует функция:
activate(wind);
В виде параметра принимает указатель на окно.
Неа, не хочет.
Я что то не могу понять что нужно написать в блок-кода перед действиями чтоб именно в нужное окно были эти действия
4. Geoteh - 30 Марта, 2023 - 01:48:27 - перейти к сообщению
несколько тем ниже я тоже спрашивал о чем то похожем ))) как мне подсказал Zireael и получилось решить.
в блоке старт пишешь указатель на основное окно игры ( именно окно не контрал )
---> выполняешь свой скрипт
---> перед окном где нужно переключится делаем блок кода и там прописываем такую штуку
это чтобы его активировать
---> теперь чтоб выполнить действия к примеру щёлкнуть мышкой в координатах в блоке с мышкой в параметре (указатель на окно) стоит W_Kib меняем на W_R и все остальное что должно выполнятся в этом окне меняем на W_R
---> чтоб переключится снова на основной скрипт и продолжать работу делаем снова блок кода и там вставляем
в блоке старт пишешь указатель на основное окно игры ( именно окно не контрал )
---> выполняешь свой скрипт
---> перед окном где нужно переключится делаем блок кода и там прописываем такую штуку
CODE:
win w = window ("-1, -1, -1); // указатель на другое окно
if(w)
{
activate(w); // активировать окно
}
else messagebox("Окно не найдено");
W_R= window ("-1, -1, -1); // указатель на другое окно
if(w)
{
activate(w); // активировать окно
}
else messagebox("Окно не найдено");
W_R= window ("-1, -1, -1); // указатель на другое окно
это чтобы его активировать
---> теперь чтоб выполнить действия к примеру щёлкнуть мышкой в координатах в блоке с мышкой в параметре (указатель на окно) стоит W_Kib меняем на W_R и все остальное что должно выполнятся в этом окне меняем на W_R
---> чтоб переключится снова на основной скрипт и продолжать работу делаем снова блок кода и там вставляем
CODE:
так он продолжает основную работу
activate(W_Kib);
5. Skillem - 30 Марта, 2023 - 14:40:55 - перейти к сообщению
Geoteh пишет:
несколько тем ниже я тоже спрашивал о чем то похожем ))) как мне подсказал Zireael и получилось решить.
в блоке старт пишешь указатель на основное окно игры ( именно окно не контрал )
---> выполняешь свой скрипт
---> перед окном где нужно переключится делаем блок кода и там прописываем такую штуку
это чтобы его активировать
---> теперь чтоб выполнить действия к примеру щёлкнуть мышкой в координатах в блоке с мышкой в параметре (указатель на окно) стоит W_Kib меняем на W_R и все остальное что должно выполнятся в этом окне меняем на W_R
---> чтоб переключится снова на основной скрипт и продолжать работу делаем снова блок кода и там вставляем
в блоке старт пишешь указатель на основное окно игры ( именно окно не контрал )
---> выполняешь свой скрипт
---> перед окном где нужно переключится делаем блок кода и там прописываем такую штуку
CODE:
win w = window ("-1, -1, -1); // указатель на другое окно
if(w)
{
activate(w); // активировать окно
}
else messagebox("Окно не найдено");
W_R= window ("-1, -1, -1); // указатель на другое окно
if(w)
{
activate(w); // активировать окно
}
else messagebox("Окно не найдено");
W_R= window ("-1, -1, -1); // указатель на другое окно
это чтобы его активировать
---> теперь чтоб выполнить действия к примеру щёлкнуть мышкой в координатах в блоке с мышкой в параметре (указатель на окно) стоит W_Kib меняем на W_R и все остальное что должно выполнятся в этом окне меняем на W_R
---> чтоб переключится снова на основной скрипт и продолжать работу делаем снова блок кода и там вставляем
CODE:
так он продолжает основную работуactivate(W_Kib);
А привязку какую делаешь: По выбору, Активный по указателю?
Я если делаю Активный по указателю он мне автоматически выставляет W_Kib вместо W_R
(Добавление)
CODE:
win w = window ("-1, -1, -1); // указатель на другое окно
if(w)
{
activate(w); // активировать окно
}
else messagebox("Окно не найдено");
W_R= window ("-1, -1, -1); // указатель на другое окно
if(w)
{
activate(w); // активировать окно
}
else messagebox("Окно не найдено");
W_R= window ("-1, -1, -1); // указатель на другое окно
Этот код сработал, спасибо большое!!
CODE:
activate(W_Kib);
А этот код что то не работает, всё равно кликает по рабочему столу и не активирует окно из блока старт, хотя изначально в нём работает.