ttk输入背景色

ttk输入背景色,第1张

ttk输入背景色

经过 大量 挖掘,我已经弄清楚了。尽我所能找出来的努力,我想其他人将从中受益:

应用于ttk.Entry的标准样式根本没有采用fieldbackground选项,这将改变文本输入字段的颜色。解决方案是创建一个 确实
响应该选项的新元素。

from tkinter import *from tkinter import ttkroot_window = Tk()estyle = ttk.Style()estyle.element_create("plain.field", "from", "clam")estyle.layout("EntryStyle.TEntry",        [('Entry.plain.field', {'children': [( 'Entry.background', {'children': [(     'Entry.padding', {'children': [(         'Entry.textarea', {'sticky': 'nswe'})],'sticky': 'nswe'})], 'sticky': 'nswe'})],'border':'2', 'sticky': 'nswe'})])estyle.configure("EntryStyle.TEntry",      background="green",       foreground="grey",      fieldbackground="black")entry_v = StringVar()entry = ttk.Entry(root_window, , textvariable=entry_v)entry.pack(padx=10, pady=10)

不幸的是,似乎更改边框颜色的唯一方法是给其边框宽度为零,并将其嵌套在 充当 边框的框架中,或者定义一个将图像用作边框的新布局项目。

另外,请注意,背景控制的唯一内容是很小的角落空间;如果斜视一下,您会在每个角落看到一个绿色的像素。

要将图像用作边框,可以执行以下 *** 作:

img2 = PhotoImage("entryBorder", data="""        R0lGODlhHQAdAOMNAAAAAAQGCAgLERkfLR0mODBFZTFFZTNIajtTezxTez1XgD5XgU        Fch////////////ywAAAAAHQAdAAAEbHCQg5i9OGt0iFRaKGLKxBgCoK5s6woGc4Cp        a9+AwFQM7ruYn1AVHP6KRhwyaVsyW87nKioFUKXXZ5a5TXaN32FYOD5eqsAzmlX2tZ        XqNZGxYATkgAD9wCjUqgIFMgR1I4YZCx4TCYeGCR0DEQA7""")oestyle = ttk.Style()oestyle.element_create("blueborder", "image", "entryBorder",  border=3, sticky="nsew")oestyle.layout("OEntryStyle.TEntry",    [('Entry.blueborder', {'children': [(        'Entry.padding', {'children': [(          'Entry.textarea', {'sticky': 'nswe'})],'sticky': 'nswe'})], 'sticky': 'nswe'})])oestyle.configure("OEntryStyle.TEntry",      background="black",       foreground="grey")oentry_v = StringVar()oentry = ttk.Entry(root_window, , textvariable=oentry_v)oentry.pack(padx=10, pady=10)

通过将我想要的边框图像作为gif馈入来生成字符串

import base64with open('otherframeBorder.gif', 'rb') as f:    enpred = base64.enprestring(f.read())    print(enpred.depre('latin1'))


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5650184.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存