Как и в любом другом диалоговом окне, они требуют от вас
- Используйте метод run.
- Использовать сигнал "ответ"
Первый заблокирует основной цикл и вернется, как только диалоговое окно получит ответ. Это может быть нажатие любой кнопки в области действия или нажатие клавиши Esc, либо вызов метода ответа диалогового окна или «уничтожение» окна последнее не означает, что окно будет уничтожено, это означает, что метод run () завершит работу и вернет ответ. как это:
response = dialog.run()
Если вы используете отладчик, вы заметите, что основной цикл остается там, пока вы не нажмете кнопку или не попытаетесь закрыть диалоговое окно. Получив ответ, вы можете использовать его по своему усмотрению.
response = dialog.run()
if response == gtk.RESPONSE_OK:
#do something here if the user hit the OK button
dialog.destroy()
Второй позволяет вам использовать диалог в неблокирующем материале, затем вы должны подключить свой диалог к сигналу «ответ».
def do_response(dialog, response):
if response == gtk.RESPONSE_OK:
#do something here if the user hit the OK button
dialog.destroy()
dialog.connect('response', do_response)
Теперь вы заметили, что вам нужно уничтожить свой диалог