Tkinter标签可以';t显示正确的消息(Win 10 python 3)
我尝试创建一个函数,当用户在inputField中键入文件名并单击save按钮时。可以使用新条目名复制mdb文件,消息将显示source=>destination。转到相同的文件名,它将显示文件已存在。但当我键入新文件名时,请单击“保存”按钮。它总是显示文件已经存在。我不知道我的代码出了什么问题Tkinter标签可以';t显示正确的消息(Win 10 python 3),python,python-3.x,tkinter,tk,Python,Python 3.x,Tkinter,Tk,我尝试创建一个函数,当用户在inputField中键入文件名并单击save按钮时。可以使用新条目名复制mdb文件,消息将显示source=>destination。转到相同的文件名,它将显示文件已存在。但当我键入新文件名时,请单击“保存”按钮。它总是显示文件已经存在。我不知道我的代码出了什么问题 from tkinter.ttk import * class View(Frame): def __init__(self, master=None): Frame.__i
from tkinter.ttk import *
class View(Frame):
def __init__(self, master=None):
Frame.__init__(self, master)
self.winfo_toplevel().title("Save File")
self.grid()
self.init_view()
def init_view(self):
self.inputText = Label(self)
self.inputText["text"] = "Input Serial ID"
self.inputText.grid(row=0, column=0, sticky=N + E)
self.inputField = Entry(self)
self.inputField["width"] = 20
self.inputField.grid(row=0, column=1, sticky=N + W)
self.save = Button(self)
self.save["text"] = "Save"
self.save.grid(row=1, column=1, sticky=N + W)
self.displayText = Label(self)
self.displayText["text"] = "Status:Idle"
self.displayText.grid(row=3, column=0, columnspan=7, sticky=N)
if __name__ == '__main__':
root = Tk()
app = View(master=root)
root.mainloop()
I除非当文件(使用新名称)复制到目标文件路径时,消息可以正确显示。然后显示'source={}=>destination={}'。格式(src,dst)'。当目标文件路径中的文件名相同时,它将显示“文件已存在”。单击
保存按钮时,更新src
内容。
只需在save_方法
函数中的for
循环之前添加以下行即可
src = self.app.inputField.get()
单击save
按钮时,您没有更新src
的内容src
总是会有r“HIDE FOR PRI”
@Pruhdvi我想这段代码可能会导致错误的方向。我仍然无法理解。您提到它始终显示文件已存在,您收到此错误,因为src变量中的内容不是您在输入字段中输入的文本。您为文件夹中的所有文件指定了相同的名称,这就是您收到此错误的原因
src = self.app.inputField.get()