擅长:python、mysql、java
<p>如果您的应用程序只需要<code>MainWindow</code>的一个实例,那么您可以通过使它成为一个单例类来实现您想要的:</p>
<pre><code>class MainWindow(QMainWindow):
_instance = None
_initialized = False
def __new__(cls):
if cls._instance is None:
cls._instance = super(MainWindow, cls).__new__(cls)
return cls._instance
def __init__(self, parent=None):
if not self._initialized:
super(MainWindow, self).__init__(parent)
loadUi(os.path.join(SCRIPT_DIRECTORY, 'mainwindow.ui'), self)
self.connectInterface()
self._initialized = True
</code></pre>
<p>现在只要调用<code>MainWindow()</code>,它总是返回相同的实例。在</p>