簡體   English   中英

tkinter ttk 樣式在 tkinter 中,我想讓我的 label 出現

[英]tkinter ttk style In tkinter, I want to make my label appear

我使用 ttk.style 創建了新的樣式框架,並使框架與圖像一起出現。 但是框架上沒有出現 label。

這是我的代碼:

root = tk.Tk()
style = ttk.Style()
img = tk.PhotoImage(file="img/line_test.png")
style.element_create("teststyle.TFrame", "image", img)
style.configure("teststyle.TFrame", background="red", compound="center")
style.layout("teststyle.TFrame", [("teststyle.TFrame", {"sticky": "nsew"})])
frame = ttk.Frame(root, style="teststyle.TFrame", height=100, width=360)
test_lbl = ttk.Label(frame, text="test", style="teststyle.TFrame")
test_lbl.pack()
frame.pack()
root.mainloop()

您正在嘗試將樣式應用於框架和框架內的 label。 您不應該為 label 小部件使用自定義樣式。

問題在於布局指定了小部件的哪些內部元素以及它們的組織方式。 滾動條有一個槽、一個拇指和一個邊框。 按鈕有文本元素和邊框,Label 有邊框和文本元素等。您的框架布局只有邊框,沒有文本元素。 因此,與小部件關聯的任何文本都不會顯示。

您需要從 label 小部件中刪除樣式:

test_lbl = ttk.Label(frame, text="test")

暫無
暫無

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

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