2011-02-03 4 views
0

Идея состоит в том, что у меня будет два или три разных окна, и я бы хотел открыть и закрыть их автоматически, вызвав функцию (отдельные функции для открытия и закрытия каждого окна). Сама программа будет работать в фоновом режиме, но когда произойдет определенное событие, она вызовет функцию открытия окна. В другом случае окно закроется, или откроется окно №2 и т. Д.Открытие и закрытие окон путем вызова функции?

Это вообще идея. Сейчас я соглашусь на одно окно, которое я мог бы открыть, вызвав функцию. Таким образом, в двух словах функция, которая открывает окно, но позволяет программе работать в фоновом режиме, ожидая команды для уничтожения окна.

Возможно ли это сделать?

Я искал решения tkinter, пока не работает. Причина tkinter заключается в том, что wxpython не закрывает окно, если вы не нажмете на него мышь.

Кроме того, в конце концов, я буду делать окна без полей, которые всегда будут поверх всего остального. У меня есть несколько подходящий код для этого уже, но это ничего окончательного.

PS. Да, я знаю, что это плохо сформулированный вопрос. Вот почему я спрашиваю ...

+1

Какая платформа? – ChristopheD

ответ

1

В wxWindows вы просто вызываете метод .destroy() в диалоговом окне/window, чтобы удалить его. Вам не нужно наводить указатель мыши на него. Это сделало бы приложения wxWindows очень раздражающими.

Я подозреваю, что ваша проблема больше связана с попыткой сделать что-то вне рамки событий wx. Большинство графических интерфейсов управляются событиями, поэтому, если у вас есть другие вещи, вы запускаете их в другом потоке и заставляете их сигнализировать инфраструктуре графического интерфейса, чтобы делать что-либо или запускать ваш код в обратном вызове обработчика события, который позволяет обработчику событий управлять. destroy(), который вы вызывали в своем коде.

Смежные вопросы