0

我想创建一个小工具,它将读取文件夹中的所有 python 工具,将它们放在 QListWidget 中,每次双击其中一个工具时,它都会运行。

ToolList.py
那是工具的主窗口

import sys
import glob
from PySide import QtGui


class List(QtGui.QListWidget):
    def __init__(self, parent=None):
        super(List, self).__init__(parent)

        # Add tools
        for f in glob.glob("tool_*.py"):
            self.addItem(f)
        self.itemDoubleClicked.connect(self.execute_python)

    def execute_python(self):
        for itm in self.selectedItems():
            execfile(itm.text())


if __name__ == '__main__':
    app = QtGui.QApplication([])
    form = List()
    form.show()
    sys.exit(app.exec_())

tool_test1.py
当我双击这个时,它会自动消失

import sys
from PySide import QtGui

if __name__ == '__main__':
    app = QtGui.QApplication.instance()
    but = QtGui.QPushButton()
    but.show()

tool_test2.py
当我双击这个时,它崩溃说QCoreApplication::exec: 事件循环已经在运行

import sys
from PySide import QtGui

if __name__ == '__main__':
    app = QtGui.QApplication.instance()
    but = QtGui.QPushButton()
    but.show()
    sys.exit(app.exec_())

有任何想法吗?

谢谢,尼克

4

0 回答 0