Как выйти из приложения pygtk после закрытия / уничтожения последнего окна - PullRequest
5 голосов
/ 27 сентября 2011

Есть ли способ заставить gtk автоматически вызывать gtk.main_quit(), когда последнее открытое окно приложения закрыто / уничтожено?

Если нет прямой функции, предлагающей эту функцию, я мог бы подуматьследующее: В методе уничтожения окна: получить список открытых окон в процессе, если оно пустое.Есть ли способ получить такой список?

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

Ответы [ 2 ]

7 голосов
/ 27 сентября 2011

сигнал уничтожения главного окна должен быть подключен к gtk main_quit:

window.connect("destroy", gtk.main_quit)
2 голосов
/ 20 октября 2011

Используйте метод gtk.main_level (), чтобы получить текущий уровень вложенности основного цикла. Уровень вложения повышается путем вызова функции gtk.main () и уменьшается путем вызова функции gtk.main_quit ()

...