в общем хотелось бы сделать:
имеется скомпилированный exe что бы при закрытии немодального окна кибор полностью закрывался а не выдавало диалог Пуск
думал сделать так:
что бы при закрытии немодального окна не останавливать скрипт а просто закрывать окно и потом что бы скрипт не нашел окно скомпилированного exe выполнил функцию close();
но это не удобно:
1. придется постоянно проверять окно
2. для тестирования скрипта, при тесте постоянно коментировать close(); (((
3. вдобавок у меня несколько окон
1. AdryV - 18 Февраля, 2018 - 06:42:15 - перейти к сообщению
2. Zireael - 18 Февраля, 2018 - 07:44:26 - перейти к сообщению
Можно не закрывать окно диалога, а скрывать его. В таймере проверять видимость окна, если скрыто вызвать close().
Хотя проблему комментирования close это не решит.
Хотя проблему комментирования close это не решит.
CODE:
external(INT, "IsWindowVisible", "IsWindowVisible", "User32.dll");
createdialog(0);
showdialog(0, "Диалог", 835, 390, 188, 114, 0, 1); // 0 - скрывать окно при нажатии на крестик
sleep(500);
win w=window("Диалог");
enabletimer(0);
loop() sleep(10);
CREATE_TIMER(0, 1000)
{
if(IsWindowVisible(formatwi(w))==0)messagebox("Окно скрыто"); // если окно скрыто
}
createdialog(0);
showdialog(0, "Диалог", 835, 390, 188, 114, 0, 1); // 0 - скрывать окно при нажатии на крестик
sleep(500);
win w=window("Диалог");
enabletimer(0);
loop() sleep(10);
CREATE_TIMER(0, 1000)
{
if(IsWindowVisible(formatwi(w))==0)messagebox("Окно скрыто"); // если окно скрыто
}
3. AdryV - 18 Февраля, 2018 - 08:40:40 - перейти к сообщению
Zireael пишет:
Можно не закрывать окно диалога, а скрывать его. В таймере проверять видимость окна, если скрыто вызвать close().
Хотя проблему комментирования close это не решит.
Хотя проблему комментирования close это не решит.
но есть один нюанс если я его возьму и сверну в диалоге скомпиленого скрипта то что произойдет?
есть ли в либах чтот типа IsWindowVisible только для закрытия?
4. Zireael - 18 Февраля, 2018 - 08:57:48 - перейти к сообщению
Цитата:
если я его возьму и сверну в диалоге скомпиленого скрипта то что произойдет?
Свернуть окно и скрыть не одно и тоже.
Сворачивать диалог можно будет, это не влияет на видимость окна.
Соберите скрипт в exe и посмотрите. Вместо messagebox("Окно скрыто"); напишите close();
Цитата:
есть ли в либах чтот типа IsWindowVisible только для закрытия?
Для закрытия чего? Кибор можно закрыть через close().
5. AdryV - 18 Февраля, 2018 - 09:06:11 - перейти к сообщению
все кажись понял