在python中导入和运行生成的pyqt gui不起作用

2024-09-27 23:19:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我对python和pyqt也是新手。我使用canopy作为python编辑器。在

我用qtdesigner(版本5)设计了一个简单的gui,包括两个按钮和一个graphicsView。我使用pyuic将其转换为python文件,名为TheMainGUI,如下所示:

from PyQt4 import QtCore, QtGui

try:
    _fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
    def _fromUtf8(s):
        return s

try:
    _encoding = QtGui.QApplication.UnicodeUTF8
    def _translate(context, text, disambig):
        return QtGui.QApplication.translate(context, text, disambig, _encoding)
except AttributeError:
    def _translate(context, text, disambig):
        return QtGui.QApplication.translate(context, text, disambig)

class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName(_fromUtf8("MainWindow"))
        MainWindow.resize(467, 268)
        self.centralwidget = QtGui.QWidget(MainWindow)
        self.centralwidget.setObjectName(_fromUtf8("centralwidget"))
        self.FetchButton = QtGui.QPushButton(self.centralwidget)
        self.FetchButton.setGeometry(QtCore.QRect(30, 40, 111, 31))
        self.FetchButton.setObjectName(_fromUtf8("FetchButton"))
        self.PlotButton = QtGui.QPushButton(self.centralwidget)
        self.PlotButton.setGeometry(QtCore.QRect(30, 120, 111, 31))
        self.PlotButton.setObjectName(_fromUtf8("PlotButton"))
        self.graphicsView = QtGui.QGraphicsView(self.centralwidget)
        self.graphicsView.setGeometry(QtCore.QRect(190, 10, 256, 192))
        self.graphicsView.setObjectName(_fromUtf8("graphicsView"))
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtGui.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 467, 21))
        self.menubar.setObjectName(_fromUtf8("menubar"))
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtGui.QStatusBar(MainWindow)
        self.statusbar.setObjectName(_fromUtf8("statusbar"))
        MainWindow.setStatusBar(self.statusbar)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow", None))
        self.FetchButton.setText(_translate("MainWindow", "Fetch User Data", None))
        self.PlotButton.setText(_translate("MainWindow", "Plot User Track", None))

我想将这个gui代码导入另一个python文件,以向gui添加一些功能。我不想编辑同一个guipython文件,因为我可能需要在实现时更改它,它会擦除我的代码。在

因此,我创建了另一个python文件,包括以下代码:

^{pr2}$

这段代码使用的是我在网上找到的教程。但是,当我运行它时,它只显示一个空窗口,甚至没有标题。在

我花了很多时间试图找出我的代码出了什么问题,但是没有任何进展。任何帮助都将不胜感激。在


Tags: 文件代码selfdeftranslateqtguiqtcoresetobjectname

热门问题