我最近决定用 Python 和 PySide 编写我的第一个应用程序。但是我有一个问题,希望你们能帮忙。
Python 不断引发“内部 C++ 对象”被删除的异常。根据我对 Python 的有限经验,我认为我的对象超出了范围并被 Python 的垃圾收集器删除。
那么我将如何使用 PySide 在 Python 中设计一个多页面应用程序。并且能够保留我的 QWidgets,以便我可以再次显示该页面。
谢谢你的时间。
更新(代码)
instancing = None
def instance():
global instancing
if instancing == None:
instancing = WPZKernel()
return instancing
class WPZKernel:
win = None
mainscreen = None
def mainwindow(self):
if self.win == None:
self.win = GMKMainWindow(self)
return self.win
def main_panel(self):
if self.mainscreen == None:
self.mainscreen = GMKMainScreen(self.mainwindow())
return self.mainscreen
然后我通常会通过调用来访问主面板:
import kernel
kernel.instance().main_panel()
那么我会以错误的方式解决这个问题吗?