如何在tkinter中更新标签?

2024-04-29 04:40:37 发布

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

我正在尝试创建一个程序,在这个程序中,你将一个单词放入一个框中,按add,这个单词就会进入一个列表,列表也会显示在右侧。当我按“前进”按钮时,列表上的第一件事就被删除了。问题是当我按下按钮/编辑列表时无法更新标签

from tkinter import *

root = Tk()
root.title('Speakers List')
root.minsize(800, 600)

speakers = ['none']
spe = speakers[0]

def add():
    if spe == 'none':
        speakers.insert(0, [s])
        e.delete(0, END)
        spe.config(text=speakers[0])
    else:
        speakers[-2] = [s]
        e.delete(0, END)
        spe.config(text=speakers[0])
    return


def forward():
    if len(speakers) is 0:
        return
    else:
        del speakers[0]
        spe.config(text=speakers[0])
    return


entry = StringVar()
e = Entry(root, width=30, font=("Arial", 20), textvariable=entry)
e.grid(row=0, sticky=W)
s = e.get()

button1 = Button(root, padx=10, pady=10, bd=5, text='Add', fg='black', command=add)
button1.grid(row=0, column=1)

button2 = Button(root, padx=10, pady=10, bd=5, text='Next', fg='black', command=forward)
button2.grid(row=1, column=1)

n = Label(root, font=("Arial", 35), bd=2, text=spe)
n.grid(row=1, sticky=W)

listdisplay = Label(root, font=('Arial', 20), text=speakers)
listdisplay.grid(row=0, column=10)


root.mainloop()

Tags: text程序addconfig列表returncolumnroot
1条回答
网友
1楼 · 发布于 2024-04-29 04:40:37

这就是你要找的那种东西吗

from tkinter import *

root = Tk()
root.title('Speakers List')
root.minsize(800, 600)

speakers = ['50']
spe = speakers[0]

def add():
    entry=e.get()
    speakers.append(entry)
    listdisplay.config(text=speakers)
    return


def forward():
    if len(speakers) is 0:
        return
    else:
        del speakers[0]
    listdisplay.config(text=speakers)

    spe=speakers[0]
    n.config(text=spe)
    return


entry = StringVar()
e = Entry(root, width=30, font=("Arial", 20), textvariable=entry)
e.grid(row=0, sticky=W)
s = e.get()

button1 = Button(root, padx=10, pady=10, bd=5, text='Add', fg='black',command=add)
button1.grid(row=0, column=1)

button2 = Button(root, padx=10, pady=10, bd=5, text='Next', fg='black',command=forward)
button2.grid(row=1, column=1)

n = Label(root, font=("Arial", 35), bd=2, text=spe)
n.grid(row=1, sticky=W)

listdisplay = Label(root, font=('Arial', 20), text=speakers)
listdisplay.grid(row=0, column=10)


root.mainloop()

如果是: 创建一个列表,然后使用append函数向其中添加一个项。其余的都差不多

相关问题 更多 >