当前位置:   article > 正文

python中,ttk.Combobox的background、foreground和font属性的设置问题_ttk样式设置

ttk样式设置

python中,combobox是ttk部件,其样式属性设置不同于tk部件,下面用各种方法对其进行设置,但是效果却不相同,实在费解。

1.在创建时设置样式属性:只有顶端文本框的font和foreground属性有效,background无效

下列列表的3个属性均无效。

  1. import tkinter as tk
  2. from tkinter import ttk
  3. root=tk.Tk()
  4. root.geometry("300x300")
  5. combobox=ttk.Combobox(root,values=[1,2,3,4,5],font=('黑体',20),background='blue',foreground='red')
  6. combobox.pack()
  7. root.mainloop()

 运行结果如下图

 2.用style控制样式:只有顶端文本框的前景色生效

  1. import tkinter as tk
  2. from tkinter import ttkroot=tk.Tk()
  3. root.geometry("300x300")
  4. ttk.Style().configure('TCombobox',foreground='red',font=('黑体',30),background="blue",width=20)
  5. combobox=ttk.Combobox(root,values=[1,2,3,4,5],style='TCombobox')
  6. combobox.pack()
  7. root.mainloop()

 3.用root.option_add()方法:顶端的文本框的背景色和前景色无效,但font属性有效;

下列列表的background,foreground和font都有效

  1. root=tk.Tk()
  2.   root.geometry("300x300")
  3.   root.option_add("*TCombobox*background","blue")
  4.   root.option_add("*TCombobox*Font",('黑体',30))
  5.   root.option_add("*TCombobox*Foreground","red")
  6.    combobox=ttk.Combobox(root,values=[1,2,3,4,5])
  7.   combobox.pack()
  8.   root.mainloop()

 

 对此三种情况的结果不慎理解,还请大神解释一些原因。

 

 

 

 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/400633?site
推荐阅读
相关标签
  

闽ICP备14008679号