为什么我的标签没有显示在tkinter中?

2024-10-04 03:25:59 发布

您现在位置:Python中文网/ 问答频道 /正文

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)

我不知道我说的对不对,但我用巴顿打电话给他们 由于某些原因,将显示描述标签管理器标签,但名称标签不会显示


Tags: textnameeventgetdefmanagercolumnbutton
1条回答
网友
1楼 · 发布于 2024-10-04 03:25:59
  1. 正如Bryan Oakley指出的那样,{}没有{},{}{}有,但没有标签

  2. 更重要的是,您可以将tkinter小部件视为在屏幕上绘制的图像,为了使这些图像显示文本,它们必须具有与之相关联的变量,这里我们创建一些StringVar()变量,并将它们分配给Entry,然后可以使用get方法获取当前存储在它们中的内容

  3. 您可以向按钮添加一个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()

相关问题 更多 >