PyQt - 是否可以运行两个应用程序?

Qia*_*iao 5 python user-interface pyqt

两个文件。每个都运行新窗口并自行工作。我需要运行它们。
当我运行时first.pyw,仅显示一个(第二个)窗口。

有可能两个人都运行它们吗?

首先.pyw:

import sys
from PyQt4.QtGui import *
import second

class first(QWidget):
    def __init__(self, parent=None):
        QWidget.__init__(self, parent)
        self.setWindowTitle('first')

app = QApplication(sys.argv)
firstApp = first()
firstApp.show()
sys.exit(app.exec_())
Run Code Online (Sandbox Code Playgroud)

第二个.pyw:

import sys
from PyQt4.QtGui import *

class second(QWidget):
    def __init__(self, parent=None):
        QWidget.__init__(self, parent)
        self.setWindowTitle('second')

app2 = QApplication(sys.argv)
secondApp = second()
secondApp.show()
sys.exit(app2.exec_())
Run Code Online (Sandbox Code Playgroud)

如何运行位于不同模块中的两个应用程序?

Kal*_*son 3

尽管您的应用程序可以有多个顶级窗口,但您一次只能运行一个应用程序。QCoreApplication 文档说:

...应该只有一个 QCoreApplication 对象。

这也适用于 QApplication,因为它派生自 QCoreApplication。您可以通过QCoreApplication.instance()方法或C++ 中的qApp宏来访问该应用程序。

您期望从运行两个不同的应用程序中得到什么?相反,您可以让每个模块提供一个顶级窗口,然后由应用程序启动器显示该窗口。