簡體   English   中英

Python無法使用self.Close(True)關閉

[英]Python Cannot close using self.Close(True)

當我直接單擊運行按鈕而不單擊創建的CV按鈕或IR按鈕時,我將關閉窗口。 但是,如果我單擊CV按鈕或IR按鈕,然后單擊“退出”按鈕,則將無法使用。 我嘗試同時刪除CV和IR按鈕內的app.MainLoop(),但仍然無法正常工作。

p / s CV_Button和IR_Button將調用另一個.py文件,它是一個GUI。 我不知道如何在python中調用main,但至少它能正常工作,我什至不知道是對還是錯。

def CV_Button(self, event):  # wxGlade: Main.<event_handler>
     if __name__ == "__main__":
        app = wx.PySimpleApp(0)
        wx.InitAllImageHandlers()
        MainFrame = CV(None, -1, "")
        app.SetTopWindow(MainFrame)
        MainFrame.Show()
        app.MainLoop()
     event.Skip()

def IR_Button(self, event):  # wxGlade: Main.<event_handler>
     if __name__ == "__main__":
        app = wx.PySimpleApp(0)
        wx.InitAllImageHandlers()
        MainFrame = IR(None, -1, "")
        app.SetTopWindow(MainFrame)
        MainFrame.Show()
        app.MainLoop()
     event.Skip()

def Exit_Button(self, event):  # wxGlade: Main.<event_handler>
    self.Close(True)
    event.Skip()

if __name__ == "__main__":
app = wx.PySimpleApp(0)
wx.InitAllImageHandlers()
Main = Main(None, -1, "")
app.SetTopWindow(Main)
Main.Show()
app.MainLoop()

每個應用程序最多只能有一個wx.App。 因此,您也不能有兩個主循環。 必須有一個wx.App實例(或wx.PySimpleApp,盡管已棄用)。 刪除其他人,它可能會起作用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM