簡體   English   中英

ttk.Labelframe 顏色問題

[英]ttk.Labelframe color issue

我正在使用 Python 中的 tkinter 編寫一些 GUI,使用 ttk 項目,例如筆記本、樹視圖和標簽框架(以及許多其他東西)我所做的一切看起來都很棒,直到我從“系統”更改了顏色顏色”的米色,到白色。

這是代碼的(更新的)迭代(最小可重現示例,僅顯示問題:其他不多!):

import tkinter as tk
from tkinter import *
from tkinter import ttk
from tkinter import font

window = Tk()

s=ttk.Style()

window.title("test window")
window.geometry("405x505+0+0")
section_1 = Frame(window, width = 405, height = 505)
section_1.place(x=0, y=0)

tabControl_1 = ttk.Notebook(section_1, height = 470, width = 395) #395
tab1 = ttk.Frame(tabControl_1, style='new.TFrame')
tab2 = ttk.Frame(tabControl_1)

tabControl_1.add(tab1, text='Devices')
tabControl_1.add(tab2, text='Tab 2')
tabControl_1.place(y=5,x=5)

label = ttk.Label(text="Detected devices will appear here", style="my.TLabel")

lf = ttk.LabelFrame(tab1, labelwidget=label, labelanchor='nw')
lf.pack()
lf.place(x=20,y=20)

treeview_frame = Frame(lf, width = 301, height = 201, background="white")
treeview_frame.grid(row=0, column=0, columnspan=3)
treeview_frame.grid_propagate(False)

s.configure('my.TLabel', background='white', font=('Segoe UI', 9))
s.configure('new.TFrame', background ='white')
window.resizable(False,False)
window.mainloop()

這是視覺上看起來像的(更新的)屏幕截圖: https ://imgur.com/a/oMXBSoz

從本質上講,我的問題是,讓標簽框周圍的所有這些零散位都變成白色的最簡單和/或最好的方法是什么?

如果有人能從邏輯上解釋我在這里遺漏的內容,我將不勝感激。

更新:

雖然我們在評論中有點“到達那里”,但 Derek 似乎已經通過他的回答獲得了簡單的非破壞性解決方案。

這里的教訓是,如果您的 labelframe 引用了一個標簽,您可以更改標簽和 labelframe 的樣式,這會對輸出產生影響。

根據 Derek 的回答,我得到了這個結果:

https://imgur.com/a/1vJqOUV

..從本質上講,這是完美的。

每次來到這里都讓我覺得自己真的很愚蠢(當然,這完全是我自己的錯),感謝那些插手的人的幫助。

像這樣更改ttk.Labelframe的背景顏色。

s=ttk.Style()

s.theme_use("default")
s.configure("TLabelframe", background = "white")

暫無
暫無

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

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