gpt4 book ai didi

python - 删除 Ttk Notebook 选项卡虚线

转载 作者:太空狗 更新时间:2023-10-30 01:01:40 27 4
gpt4 key购买 nike

我正在尝试制作一个看起来不像 tkinter 应用程序的 tkinter 应用程序。我使用的是TTK笔记本电脑,并且选中时,标签在文本周围有一条虚线。它看起来很糟糕,我找不到使用样式或配置删除它的方法。这里有一个截图来澄清:

enter image description here

编辑代码(我不认为它会有很大帮助,因为我实际上只是想删除默认样式的东西。):

这是笔记本的创建:

tabs = ttk.Notebook(mainframe, width=319, height=210, style=style.Notebook)
tabs.grid(column=0, row=1, sticky=('n', 'w', 'e', 's'))
tabs.columnconfigure(0, weight=1)
tabs.rowconfigure(0, weight=1)

填写:

tab1 = ttk.Frame(tabs)
tab1_frame = ttk.Frame(tab1, style=style.Frame)
tab1_frame.pack(anchor='center', expand=1, fill='both')
# stick some widgets in
progress = ttk.Progressbar(tab1_frame, orient="horizontal", length=300, mode="determinate")
progress.grid(column=1, row=1, columnspan=2, padx=style.padding, pady=style.padding)
progress['maximum'] = 1000
progress['value'] = 500
# More widgets
# Another tab
tab2 = ttk.Frame(tabs)
tab2_frame = ttk.Frame(tab2, style=style.Frame)
tab2_frame.pack(anchor='center', expand=1, fill='both')
# blah blah

相关样式:

style_config = Style()
style_config.theme_use('default')

style_config.configure(self.Notebook,
background=self.dark,
borderwidth=0)

style_config.configure(self.Tab,
background=self.dark,
foreground='white',
padding=self.padding,
borderwidth=0)
style_config.map(self.Tab,
background=[('selected', self.color1)])

最佳答案

您可以通过更改选项卡小部件的子元素来删除此焦点标记。 Ttk 小部件在 subelements 中分解.这些元素的布局通过 layout 方法(或在 theme_create 的布局参数中)描述。这是一个删除布局标记的命令(您可以将其直接应用于 Tab 或任何其他派生主题),注释部分是之前绘制焦点的部分(通过 style.layout("Tab")< 检索)/)

style.layout("Tab",
[('Notebook.tab', {'sticky': 'nswe', 'children':
[('Notebook.padding', {'side': 'top', 'sticky': 'nswe', 'children':
#[('Notebook.focus', {'side': 'top', 'sticky': 'nswe', 'children':
[('Notebook.label', {'side': 'top', 'sticky': ''})],
#})],
})],
})]
)

更 hacky 的方法可能是改变这个焦点标记的颜色,例如将其绘制为与背景相同的颜色

style.configure("Tab", focuscolor=style.configure(".")["background"])

关于python - 删除 Ttk Notebook 选项卡虚线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23354303/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com