Pyside/PyQt: “全局”组件?
我正在用PySide制作一个简单的绘图应用。
主窗口里有一个叫做chart
的小部件,它里面放着我的绘图figure
。
还有其他一些小部件和对话框需要访问这个chart
小部件,以便修改figure
的属性(比如外观、绘图数据等等)。
目前,我的小部件在初始化的时候需要把chart
的实例传给它们……这样做很糟糕,因为这就像在传递一个链条,让很多地方都要知道这个chart
的引用。
有没有办法让chart
小部件变得“全局可用”,也就是说,任何小部件都能访问它?
我考虑过在主窗口外创建一个chart
的单例,这样做有什么不好的地方吗?