QNX RTP Logo QNX Realtime Platform: Русский Портал QNX
Thursday, 4 Dec 2008 00:30
Меню

Проект OpenNET - все о Unix
Главная

 · Начало · Статистика · Поиск ·

  QNX.ORG.RU —› Программирование под Photon —› как закрыть окно из кода?

Посл.ответ Сообщение


Дата: 24 Июл,  17:33

Всем добрый день!

Кто-нибудь знает, как поступить в такой ситуации?:
есть окно с текстовым полем ввода и кнопкой. Значит если в текстовом поле что-то есть, то при нажатии на кнопку открывается другое окно. Оба окна уже заранее созданы в PhAB, т.е. ничего динамически создавать не нужно. Внимание вопрос - как закрыть первое окно при открывании второго (из кода)?

Спасибо!


Дата: 25 Июл,  09:56

sen, закрыть или спрятать?


Дата: 25 Июл,  14:17

Закрыть, но можно и скрыть, только в последнем случае его потом нужно будет опять показать, чтобы завершить приложение полностью.


Дата: 25 Июл,  15:12

Закрыть - PtUnrealizeWidget( ABW_window1);
Но закрываются эти окна вместе и скрываются тоже вместе, так что придётся его оставить)


Дата: 28 Июл,  16:46

Легко! Не закрывать, а спрятать в невидимую область, т.е. примерно так:

PhPoint_t wid_pos;
wid_pos.x=-1000;
wid_pos.y=-1000;
PtSetResource(ABW_my_window, Pt_ARG_POS, &wid_pos, 0);


А вообще можно реализовать приложение по другому: не создавать два окна, а создать одно окно, в котором будет находиться, например два PtPane друг под ругом и функцией PtWidgetToFront() выставлять на передний план то один, то другой PtPane


Дата: 29 Июл,  14:50

Помимо выноса окна в невидимую область хорошо бы ещё заблокировать возможность получения фокуса этим окном, вызова системного меню и пр.


Дата: 29 Июл,  18:38

проще его убрать...
через PtDestroyWidget например, убрать как говорится капитально )


Дата: 30 Июл,  10:43

Fregl
через PtDestroyWidget например

В таком случае это приведет к закрытию дочерних окон. В частности, если другое окно создано после закрываемого, то и оно так же закроется. Я говорю о списке окон в пункте "Windows Opened/Start-Up" окна "Application Startup Information" (открывается на F2).

You must login to post.

©   2000-2003 Команда проекта QNX.ORG.RU // QNX.ORG.RU Team
Авторы проекта: Дмитрий Алексеев [dmi] и Дмитрий Васильев. Техническое сопровождение проекта: Игорь Сорокин [isorokin]. Информационное сопровождение: Дмитрий Алексеев [dmi]
QNX - зарегистрированная торговая марка QNX Software Systems, Ltd., Canada. Остальные упоминаемые на сайте торговые марки и логотипы являются исключительно собственностью их уважаемых владельцев. Ничьи права не затронуты. Материалы сайта не могут быть скопированы и где-либо использованы в той или иной форме без письменного разрешения разработчиков сайта.
Powered by Mambo Open Source