配置具有透明背景的tkinter/ttk小部件,ttk框架背景颜色?

Mal*_*olm 8 python windows tkinter ttk

是否有可能配置TKinter或者TTK窗口小部件(Label,Entry,Text具有透明背景),以便它们可以被放置在与自定义的背景颜色或在画布上图形或图像的顶部容器?

我也在寻找一种方法来改变ttk Frame小部件的背景颜色?

我是否需要使用新的ttk Style对象来完成上述操作?(我是tkinter/ttk的新手,仍然试图绕着正确的方式做事).

Don*_*ows 3

除了在 OSX 上,你想要的东西都无法完成,因为所有这些小部件都是在矩形的真实窗口上绘制的(除非你使用一些低级技巧在相关窗口上挖洞;这不是我推荐的方法,尽管我有 Tcl/Tk 的代码 \xe2\x80\x93,而不是 Python/Tkinter 承认的 \xe2\x80\x93 ,它可以做到这一点)。OSX 是个例外,因为小部件(大部分)不是在真实的窗口上绘制的,而是使用更轻量级的系统(因为这就是 OSX 的工作方式)。

\n\n

可以将小部件调整为比正常情况更少的边框,如果您使用的样式使它们基本上保持方形,那么这是可以的。或者,如果您在 \xe2\x80\x9cinteresting\xe2\x80\x9d 表面上使用画布,则可以在画布上构建类似按钮的东西,这可能更适合您实际所做的事情。

\n\n

要更改 Ttk 框架的背景颜色,您必须对其应用样式。到目前为止,我见过的有关样式创建的最佳说明位于tkdocs 样式教程中,当我想要查找如何执行这些操作时,我会去那里。(是的,Ttk 文档本身应该涵盖这一点,但目前还没有。)

\n