簡體   English   中英

為什么我的標簽沒有顯示在tkinter中?

[英]Why isn't my label being displayed in tkinter?

def name_label_manager(event):
    name = name_entry.get()
    label_name = Label(root, text="Name: " + name)
    label_name.grid(row=10, column=1, sticky=W)
    label_name.delete(0, "end")

def description_label_manager(event):
    description1 = description.get()
    descrpt = Label(root, text="Description: " + description1)
    descrpt.grid(row=9, column=1, sticky=W)
    descrpt.delete(0, "end")

我這樣稱呼他們:

button_get = Button(root, text="Submit")
button_get.bind("<Button-1>", description_label_manager,name_label_manager)
button_get.grid(row=2, column=8)

我不知道這是否正確,但是由於某種原因我會用按鈕給他們打電話,desctription_label_manager標簽會顯示,但是名稱標簽不會

  1. 正如Bryan Oakley所指出的, labels沒有delete methodEntry Listbox有,但標簽沒有

  2. 更重要的是,您可以將tkinter小部件視為屏幕上繪制的圖像,為了使這些圖像顯示文本,它們必須具有與之關聯的變量,這里我們創建一些StringVar()變量並將其分配給Entry ,然后您可以使用get方法獲取當前存儲在其中的內容。

  3. 您可以在Button上添加command參數以調用函數,在這種情況下應該這樣做。

查看下面的代碼以了解我上面剛剛解釋的內容

import tkinter as tk
def name_label_manager(event=None):
    name = name_entry_variable.get()
    label_name = tk.Label(root, text="Name: "+name)
    label_name.grid(row=10, column=1)
    #label_name.delete(0, "end")
    description_label_manager()

def description_label_manager(event=None):
    description1 = description_entry_variable.get()
    descrpt = tk.Label(root, text="Description: "+description1)
    descrpt.grid(row=9, column=1)
    #descrpt.delete(0, "end")

root=tk.Tk()
name_entry_variable=tk.StringVar()
description_entry_variable=tk.StringVar()
name_entry=tk.Entry(root,textvariable=name_entry_variable,width=10)
name_entry.grid(row=2, column=8)
description_entry=tk.Entry(root,textvariable=description_entry_variable,width=10)
description_entry.grid(row=3, column=8)
button_get = tk.Button(root, text="Submit", command=name_label_manager)
#button_get.bind("<Button-1>", description_label_manager,name_label_manager) command argument of Button should do
button_get.grid(row=4, column=8)
root.mainloop()

暫無
暫無

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

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