如何获取当前的QApplication?
How to get the current QApplication?
我正在尝试使用 pyQt5 获取对当前 QApplication 对象的引用,但找不到该函数。我对 "pyQt get current QApplication" 的搜索显示了有关如何创建 QApplication 的结果。所以我的问题是:
是否有全局 QApplication 对象,如果有,如何获取对现有(当前)应用程序的引用。
我问的原因是我想测试调试代码是否在 Qt GUI 应用程序中 运行。然后,如果在 Qt 应用程序中使用该函数,我想调出一个 QMessagebox
来显示错误消息;否则将消息打印到标准输出。
QApplication应该只有一个,如果我们要获取已有的,就必须使用instance()
,常用的方法是使用下面的技巧:
app = QtWidgets.QApplication.instance()
if app is None:
# if it does not exist then a QApplication is created
app = QtWidgets.QApplication([])
我正在尝试使用 pyQt5 获取对当前 QApplication 对象的引用,但找不到该函数。我对 "pyQt get current QApplication" 的搜索显示了有关如何创建 QApplication 的结果。所以我的问题是:
是否有全局 QApplication 对象,如果有,如何获取对现有(当前)应用程序的引用。
我问的原因是我想测试调试代码是否在 Qt GUI 应用程序中 运行。然后,如果在 Qt 应用程序中使用该函数,我想调出一个 QMessagebox
来显示错误消息;否则将消息打印到标准输出。
QApplication应该只有一个,如果我们要获取已有的,就必须使用instance()
,常用的方法是使用下面的技巧:
app = QtWidgets.QApplication.instance()
if app is None:
# if it does not exist then a QApplication is created
app = QtWidgets.QApplication([])