Я запускаю скрипт, написанный на python, из меню скриптов в настольном приложении.Это в основном гигантский макрос, который я написал и добавил графический интерфейс.Я уверен, что графический интерфейс действительно старый, который использует мое настольное приложение под названием dialogKit из MIT. GitHub все еще здесь. Проблема в том, что слово "stop" находится в самом конце диалогового кода.Я продолжаю получать сообщение "Стоп не определен", которое я понимаю, но я пытался все, чтобы закрыть диалоговое окно, и если я использую exit()
, sys.exit()
, я не получаю сообщение об ошибке, но оно также закрывает мойвсего настольного приложения.
Мне нужно закрыть диалоговое окно и оставить программное обеспечение открытым.Документацию с ограниченным диалоговым окном для того, что я использую, можно найти здесь .(возможно, вам придется нажать на раздел «Диалог». На их сайте используются фреймы.)
class MyDialog:
def __init__(self):
self.d = Dialog(self)
self.d.size = Point(300, 340)
self.d.Center()
self.d.title = "Halftone" #<----- Title of the dialogue
self.d.AddControl(STATICCONTROL, Rect(aIDENT, aIDENT, aIDENT, aIDENT), "frame", STYLE_FRAME)
# more controls and methods..
def on_ok(self, code):
return 1
def on_cancel(self, code):
print "blah"
def Run(self):
return self.d.Run()
d = MyDialog()
if d.Run()!= 1:
stop
Мне просто нужен способ изменить stop
на что-то, что 1) не позволит запустить скрипт, а 2) закройте диалог, не выходя из всего приложения.Это функциональность типичной кнопки «отмена», и это то, что мне нужно.
Другой вариант - это метод под названием on_cancel()
, который я также попробовал и мог заставить работать само событие, но все жевсе приложение закрывается с любым видом exit()
.
В документах показан метод с именем End()
, который утверждает, что завершает объект диалога, но я пытался и не смог заставить это работать.