Форум » GUI » открыть Window1, закрыть Window1, открыть Window2 » Ответить

открыть Window1, закрыть Window1, открыть Window2

hairs: Hi All Попробовал поковырять примерчики из самплесов, вроде понятно Решил чтото свое сваять не вкурю хочется по запуску открыть Window1 с кнопкой, по клику кнопки закрыть Window1 и открыть Window2 пытаюсь чтото делать но компиляция приводит к в лучшем случае к штатному завершению программки после Window1.Release() после которого хотелось бы всетаки увидет Window2 может тип окошек указан мною не правильно оба как майн сильно прошу не пинать, ибо только начинаю осваивать если не в ту ветку отписался, вежливо скажите в какую писать юзается MiniGui окна определены каждое в своем frg и вызываются из основного.prg, Window1.Release() вызывается из action кнопки, процедурой в основном.prg

Ответов - 9

S-A-N: Хорошо бы код увидеть...

hairs: ну г...код запостить не тудно #include "minigui.ch" Procedure Main LOAD WINDOW Frm1 ACTIVATE WINDOW Frm1 Return procedure btnValid() Frm1.Release() Load Window Frm2 Activate Window Frm2 return всетаки хотелось бы понять как правильно запустить последовательсть открытия закрятия окошек пробовал поиграться с noshow для Frm2, только после Frm1.Release() остается болтаться в процессах, без всях следов на экране, шоу как бы ему сделать

S-A-N: hairs пишет: шоу как бы ему сделать Так и сделать: SHOW WINDOW Frm2 или Frm2.Show Из хелпа MiniGUI по ACTIVATE: Using this command, all defined windows will be activated simultaneously. All windows (excepting main) will be not visible at activation until show method be used to make them visible Посему, не Activate, а Show.


S-A-N: Да, а Frm2 описано как STANDARD? По-моему, где-то в Samples\Basic был такой пример. Посмотри. Если нет, и никто раньше не отзовется, то вечером постараюсь выложить пример.

Vlad04: хочется по запуску открыть Window1 с кнопкой, по клику кнопки закрыть Window1 и открыть Window2 У программы должно быть главное окно. Открываться ( точнее показываться) первым ему не обязательно. При его закрытии , программа завершает работу

hairs: хорошо пусть так, но что делать если окно описанное как main с noshow делать, то второе даже как TOPMOST не выстреливается задача сводится к основное окно не показывается пока в другом не произойдет некий ввод пока вижу что выход делать все в майн окне, играясь с созданием и убийством контролов необходимых

hairs: получилось гдето так /* * MiniGUI Note */ #include "minigui.ch" Procedure Main Load Window Frm2 (main) LOAD WINDOW Frm1 (TOPMOST) ACTIVATE WINDOW Frm2, Frm1 Return procedure Frm1Valid() Frm1.Release() Frm2.WIDTH:=600 Frm2.Height:=600 Frm2.Show() return спс всем

S-A-N: hairs пишет: что делать если окно описанное как main с noshow делать, то второе даже как TOPMOST не выстреливается В main-окне не надо noshow. Перед показом второго окна примени метод HIDE к главному окну.

Vlad04: Я делаю примерно так #include "minigui.ch" Procedure Main Load Window Frm2 (main) ACTIVATE WINDOW Frm2 Return /*инициализация главной Frm2 авторизация пользователей в форме Frm1 проверка паролей и прочее ----------------------------------*/ procedure Frm2Init() Frm2.Hide LOAD WINDOW Frm1 (TOPMOST) ACTIVATE WINDOW Frm1 Frm2.Show return



полная версия страницы