PyQt:“AttributeError:'PlayerWindow'对象在打开第二个窗口时没有属性'exec_'”

时间:2016-07-17 19:05:26

标签: python pyqt pyqt5

我使用PyQt5编写GUI。在某些时候,我试图从主窗口打开辅助窗口。我的第二个窗口是继承自PlayerWindow.PlayerWindow的班级QWidget。打开窗口的代码行是:

newWindow = PlayerWindow.PlayerWindow( self.playerUrl)
newWindow.show()
newWindow.exec_()

代码的行为与我希望它的行为方式相同,但我收到错误消息:

  

AttributeError:'PlayerWindow'对象没有属性'exec _'

我怎么能避免这种情况?

1 个答案:

答案 0 :(得分:0)

好的,我发现了我的错误。 如果未将窗口存储为主窗口实例的属性,则会收集垃圾。所以改为:

self.newWindow = PlayerWindow.PlayerWindow( self.playerUrl)
self.newWindow.show()

exec行引发了一个异常禁止垃圾回收。