点击父QMainWindow
QMainWindow
def on_click(self):
window = second_window.MainWindow()
window.show()
未显示第二个窗口(没有任何错误)。但是如果在第二个窗口中我添加了一行:
self.func = functools.partial(self.some_func)
一切正常。
为什么会这样?
答案 0 :(得分:1)
我认为这里的问题是您在window
范围内创建on_click
作为局部变量。只要on_click
完成,window
属性就会被销毁。
尝试将窗口存储在实例变量中:
def on_click(self):
self._window = second_window.MainWindow()
self._window.show()
functools.partial
方法可能只是因为您已将其存储在实例中而起作用。