Python 如何从另一个类调用函数
我在Qtdesigner上有一个表单设计,有两个类 我想在方法Python 如何从另一个类调用函数,python,python-3.x,Python,Python 3.x,我在Qtdesigner上有一个表单设计,有两个类 我想在方法getText()中使用方法addItem()中的一些变量 我不知道如何实现这个目标。谁能给我一些建议吗 提前谢谢你的帮助 class App(QWidget): def __init__(self): super().__init__() def getText(self): text, okPressed = QInputDialog.getText(self, "Get
getText()
中使用方法addItem()
中的一些变量
我不知道如何实现这个目标。谁能给我一些建议吗
提前谢谢你的帮助
class App(QWidget):
def __init__(self):
super().__init__()
def getText(self):
text, okPressed = QInputDialog.getText(self, "Get text", "Your name:", QLineEdit.Normal, "")
if okPressed and text != '':
wb = openpyxl.load_workbook('hello.xlsx')
wb.save(text+ '.xlsx')
这就是我要调用方法addItem()
的地方
这里是我想使用上面对话框中的变量文本的地方。例如,您将在方法
getText()
中使用方法addItem()
的哪些变量。给我一个线索。无论如何,您可以将AppWindow
类放在App
之前,从getText()
方法中创建对象AppWindow
,并调用addItem()
。还有其他方法。这要看情况了,你打算怎么做。谢谢你的回复。我将尝试您的解决方案,并将更新。这是我第一次在这个网站上,不知道我是否可以粘贴我的所有代码?无论如何,我首先要运行getText()。其中名为“hello.xlsx”的excel文件模板保存为用户从对话框中提供的名称。之后,我将转到addItem(),打开保存的excel文件并写入用户数据。这就是我的问题所在。当我执行self.addItem()时,它不会转到addItem。希望这是有道理的。谢天谢地,我终于明白了,但不确定这是不是正确的方法。我就是这样做的。按下“提交”按钮后,转到“附加项”。addItem将数据写入excel文件并保存。从这里调用dialogbox。要求用户输入文件名,打开上次保存的excel文件,并将其另存为用户输入文件名。由于某些原因,我不能换一种方式(比如首先转到dialog和addItem)。这里没有足够的内容来说明整个程序的结构,它决定了将信息从一个部分传递到另一个部分的正确方式。我听到了Davis。这是我第一次在这里发布,所以我不确定是否要放置整个代码。我终于找到了把整个代码放在这里的方法。我能够使一切工作,除了现在坚持把图像写入excel文件。感谢你们所有的人让我走到了这一步。例如,您将在方法getText()
中使用方法addItem()
的哪些变量。给我一个线索。无论如何,您可以将AppWindow
类放在App
之前,从getText()
方法中创建对象AppWindow
,并调用addItem()
。还有其他方法。这要看情况了,你打算怎么做。谢谢你的回复。我将尝试您的解决方案,并将更新。这是我第一次在这个网站上,不知道我是否可以粘贴我的所有代码?无论如何,我首先要运行getText()。其中名为“hello.xlsx”的excel文件模板保存为用户从对话框中提供的名称。之后,我将转到addItem(),打开保存的excel文件并写入用户数据。这就是我的问题所在。当我执行self.addItem()时,它不会转到addItem。希望这是有道理的。谢天谢地,我终于明白了,但不确定这是不是正确的方法。我就是这样做的。按下“提交”按钮后,转到“附加项”。addItem将数据写入excel文件并保存。从这里调用dialogbox。要求用户输入文件名,打开上次保存的excel文件,并将其另存为用户输入文件名。由于某些原因,我不能换一种方式(比如首先转到dialog和addItem)。这里没有足够的内容来说明整个程序的结构,它决定了将信息从一个部分传递到另一个部分的正确方式。我听到了Davis。这是我第一次在这里发布,所以我不确定是否要放置整个代码。我终于找到了把整个代码放在这里的方法。我能够使一切工作,除了现在坚持把图像写入excel文件。谢谢你们让我走这么远。
class AppWindow(QMainWindow, Ui_MainWindow):
def __init__(self):
super(AppWindow, self).__init__()
def addItem(self):
auditdate = self.dateEdit.date()
a = auditdate.toPyDate()
area = self.lineEdit_Area.text()