首页 > 解决方案 > 在另一台计算机上运行程序时出错

问题描述

我有一段代码可以在我的电脑上完美运行。我将此代码通过电子邮件发送给朋友,每当他运行它时,他都会收到 TypeError,此时我已经删除了 pySlot() 装饰器。我尝试将 pySlot() 装饰器分类为 QtCore.pylot()。它们都不起作用。这些是发布在 Stackoverflow 上的解决方案。该代码在我的计算机上完美运行,但是当我在朋友的计算机上运行它时会生成下面的错误消息——我通过电子邮件将 .py 文件(通过将其附加到电子邮件中)发送给他

错误信息:

TypeError: connect() failed between clicked(bool) and on_generate_codes()

为什么会这样?

import pandas as pd
import numpy as np
import os 

from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtCore import pyqtSlot
from PyQt5.QtWidgets import QMessageBox

class Ui_Dialog(object):

    def setupUi(self, Dialog):
        Dialog.setObjectName("Dialog")
        Dialog.resize(531, 403)
        Dialog.setFixedSize(531,403)
        self.groupBox = QtWidgets.QGroupBox(Dialog)
        self.groupBox.setGeometry(QtCore.QRect(20, 20, 251, 171))
        self.groupBox.setObjectName("groupBox")



    @pyqtSlot()
    def on_generate_codes(self):

        """ 
        This method belongs to the generate button on the Dialog box
        When a user presses the button, a spreadsheet titled 

        """

    @pyqtSlot()   
    def reconcile(self):

        """
        This method reconciles 
        """

    def retranslateUi(self, Dialog):
        _translate = QtCore.QCoreApplication.translate
        Dialog.setWindowTitle(_translate("Dialog", "Mywindow"))
        self.comboBox.setItemText(0, _translate("Dialog", "Mar"))


if __name__ == "__main__"
    import sys
    app = QtWidgets.QApplication(sys.argv)
    Dialog = QtWidgets.QDialog()
    ui = UI_Dialog
    ui.setupUi(Dialog)
    Dialog.show()
    sys.exit(app.exec())

标签: pythonuser-interfacepyqtpyqt5

解决方案


当他从电子邮件中复制时,可能会有一些不可读的字符或多余的空格。我建议您将其保存在文件中并发送文件,而不是将代码放入电子邮件中。


推荐阅读