Документация, которую я видел на tkMessageBox
, как представляется, указывает логическое возвращение для выбора пользователя в диалоговом окне askyesnocancel
. Есть 3 варианта, так как логически корректно отображать выбор пользователя?Python tkMessageBox.askyesnocancel - 3 варианта, логический вывод?
Я пробовал подход, показанный ниже, где «да» возвращает «True», «no» возвращает «False» и «cancel» возвращает «cancel», но это не работает. Выбор «нет» или «отмена» представляется как «ложный». У кого-нибудь есть идеи по этому поводу?
if tkMessageBox.askyesnocancel("Error", "Choose yes, no or cancel", default='yes')
...
...
...
elif "cancel":
return
else:
pass
Спасибо! Я добавил новый инструмент на свой пояс. – Qubit1028
На самом деле, когда я обновил код выше с помощью «elif None:», он по-прежнему не вел себя правильно. Казалось, что он все еще обрабатывает любую кнопку, кроме «да», как «ложь». – Qubit1028
Это не может работать; вам все равно нужно провести там сравнение, что, по вашему мнению, соответствует логическому значению 'None'? ;) Поэтому просто присвойте результат сообщениям переменной переменной и вставьте «если результат« Нет ». – TidB