簡體   English   中英

在Tkinter中更新標簽文本

[英]Update text of label in Tkinter

我有以下代碼打開文件,我想在其中將文件的路徑顯示為Label

import Tkinter, Tkconstants, tkFileDialog

top = Tkinter.Tk()
top.resizable(width=False, height=False)

top.geometry("700x300+350+200")

def OpenOldFile():
    top.filename = tkFileDialog.askopenfilename(initialdir = "/",title="Select old file")
    lb2 = Tkinter.Label(text="Old File:").grid(row=2,column=1, sticky='w')
    lb3 = Tkinter.Label(text=top.filename).grid(row=2,column=2, sticky='w')

def OpenNewFile():
    top.filename = tkFileDialog.askopenfilename(initialdir = "/",title="Select New file")
    lb2 = Tkinter.Label(text="New File:").grid(row=6,column=1, sticky='w')
    lb3 = Tkinter.Label(text=top.filename).grid(row=6,column=2, sticky='w')

lb1 = Tkinter.Label(text= "Select Old file:").grid(row=1,column=1, sticky='w')
B1 = Tkinter.Button(text = "Click to open file", command = OpenOldFile).grid(row=1,column=2, sticky='w')

lb4 = Tkinter.Label(text="Select New File:").grid(row=4,column=1, sticky='w')
B2 = Tkinter.Button(text="Click to open file", command = OpenNewFile).grid(row=4,column=2, sticky='w')

top.mainloop()

問題 :當我多次單擊Button B1以打開不同的文件時, Label lb3的文本將覆蓋先前的文本,如下面的屏幕快照所示。

第一次單擊時:

在此處輸入圖片說明

第二次點擊:

在此處輸入圖片說明

您每次點擊都會創建一個新標簽。 取而代之的是,您應該使用空白文本創建一個,然后在單擊時對其進行更新。

lb3 = Tkinter.Label()
lb3.grid(row=6,column=2, sticky='w')

def OpenOldFile():
    top.filename = tkFileDialog.askopenfilename(initialdir = "/",title="Select old file")
    lb3.config(text=top.filename) #or lb3["text"] = top.filename

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM