TypeError: argument 1 has unexpected type 'NoneType'(解决办法)

class main_widget(QWidget): # 继承自 QWidget类
    def __init__(self):
        super().__init__()
        self.initUI()  # 创建窗口

    def initUI(self):  # 在此处添加 窗口控件
        self.setGeometry(200, 300, 1000, 600)  # 屏幕上坐标(x, y), 和 窗口大小(宽,高)
        self.setWindowTitle("辅助工具")
        hbox = QHBoxLayout(self)
        self.onewidget = QWidget()
        self.vbox = QVBoxLayout(self.onewidget)

        self.tableWidget1 = QTableWidget(1, 8)

        self.tableWidget1.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
        #文字居中显示
       # self.tableWidget1.item(1, 8).setTextAlignment(Qt.AlignHCenter | Qt.AlignVCenter)
        #self.tableWidget1.verticalHeader().setSectionResizeMode(QHeaderView.Stretch)
       #self.tableWidget1.resize(1,1)
        self.tableWidget1.setHorizontalHeaderLabels(['版次', '产品名称', '产品料号', '责任人', '责任电话', '订单套数', '需求套数', '需求日期'])
        
        exportButton = QPushButton("export")
        tableWidget1=self.tableWidget1

        exportButton.clicked[bool].connect(lambda:ExportFile.export_file(self.tableWidget1))

 个人理解,当用pushbutton   connect时,调用外部函数时,需要给他用lambda定义。

调用自己本身内部的函数,则不需要定义

ExportFile.py

def export_file(tableWidget1): 
    try:
      data = tableWidget1.item(0, 0).text()
      print(data)
    except:
       data=''
       print("none")
#修改已有表格数据
    oldWb =xlrd.open_workbook('/Users/sr00117/Desktop/bom11.xls', formatting_info=True)#保持原格式不变

    newWb =copy(oldWb)#复制
    newWs =newWb.get_sheet(0)

    newWs.write(9, 0, "value1")

    newWs.write(9, 1, "value2")

    newWs.write(9, 2, "88")

    newWb.save('/Users/sr00117/Desktop/bom11.xls')

    print("save with same name ok")

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(TypeError: argument 1 has unexpected type 'NoneType'(解决办法))