簡體   English   中英

如何每次在 tkinter 循環中制作新標簽?

[英]How do I make a new label every time in a loop in tkinter?

因此,假設每次運行循環時,我都想在 Tkinter 中創建一個新標簽。 我不知道該怎么做,這一直是我正在做的項目的障礙。

import tkinter as tk
wndw= tk.Tk()
wndw.configure(background="white")
canvas1 = tk.Canvas(wndw, width = 500, height = 500)
canvas1.pack()
for i in range(0,10):
    #over here I want to continuously make a label(which is distinct from 
    #the last one)until the loop is finished

雖然我知道在這種情況下,我可以手動制作 10 個不同的標簽,但我需要能夠為我正在做的項目自動制作它們。

請記住,我正在使用 Tkinter。 如果有任何方法可以做到這一點,如果你告訴我如何做,我將不勝感激。

labels = {}
for i in range(10):
    labels[i] = tk.Label(text="Label %d" % i)
    labels[i].pack()

這將為您提供一組獨特的標簽。 只需插入以上內容代替for循環。

以上將標簽對象存儲在字典中,因此您可以輕松訪問它們。 並且因為每個標簽的文本都包含其索引號,所以每個標簽都是唯一的。

如果不需要存儲標簽對象,可以將上面的縮短為:

for i in range(10):
    tk.Label(text="Label %d" % i).pack()

與大多數 Tkinter 小部件一樣,標簽采用text關鍵字,您可以通過該關鍵字定義小部件上顯示的文本。

暫無
暫無

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

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