是否可以在Tkinter的下拉菜单中添加丰富多彩的项目?下拉将从枚举类获取其值。例如,枚举类具有“红色,黄色,绿色”元素。根据元素,下拉的部分将是绿色,红色和黄色。我怎么能做到这一点?tkinter的彩色下拉菜单
回答
使用关键字前景和背景为菜单添加颜色是可能的;看一看。
try:
import tkinter as tk
except:
import Tkinter as tk
root = tk.Tk()
menubar = tk.Menu(root)
filemenu = tk.Menu(menubar,tearoff=0)
filemenu.add_command(label="text 1")
filemenu.add_command(label='text 2', foreground = 'blue')
filemenu.add_command(label='text 3',background='green')
# entire dropdown menu has been given this color
editmenu = tk.Menu(menubar,tearoff=0,foreground = 'green')
editmenu.add_command(label='copy')
editmenu.add_command(label='paste')
menubar.add_cascade(menu=filemenu, label="File")
menubar.add_cascade(menu=editmenu, label="edit")
root.config(menu=menubar)
root.mainloop()
从预定义列表中获取颜色涉及for-loop。
try:
import tkinter as tk
except:
import Tkinter as tk
root = tk.Tk()
menubar = tk.Menu(root,foreground='red')
filemenu = tk.Menu(menubar,tearoff=0)
text = ['text 1', 'text 2', 'text 3']
color = ['green','red','yellow']
for a,b in zip(text,color):
filemenu.add_command(label=a,foreground=b)
menubar.add_cascade(menu=filemenu, label="File")
root.config(menu=menubar)
root.mainloop()
编辑:有希望将代码转换为2.7。
非常感谢!从几个小时以来我一直在尝试。是否有可能在我想要添加到网格并读取此类下拉列表的值(可以是文本或颜色)的下拉菜单中执行此操作。任何提示? – user2694330
不确定你的意思?是不是我用'for'-loop(第二个例子)做的那种? – arrethra
不,这里的丰富多彩的物品是filemenu的一部分。我需要它是一个单独的下拉小部件的一部分,它需要打包在一个网格中。 – user2694330
- 1. 退出Tkinter下拉菜单
- 2. Python 3.5 tkinter下拉菜单
- 3. tkinter从excel下拉菜单
- 4. SQL表中的Tkinter下拉菜单
- 5. CSS下拉菜单 - 子菜单颜色
- 6. Jquery褪色下拉菜单
- 7. tkinter:下拉菜单不可点击
- 8. Python TKinter下拉菜单问题
- 9. python Tkinter下拉菜单问题
- 10. 单色下拉菜单w /三角形?
- 11. 角 - 下拉菜单背景色
- 12. ASP.NET下拉菜单项目颜色
- 13. 颜色变化下拉菜单javascript
- 14. JavaScript。下拉菜单 - 双色变化
- 15. 下拉菜单背景颜色
- 16. ShareActionProvider从AppCompat v7下拉菜单颜色
- 17. Css下拉菜单字体颜色
- 18. Bootstrap下拉菜单文字颜色
- 19. 如何在下拉菜单中着色?
- 20. 下拉菜单
- 21. 下拉菜单?
- 22. 下拉菜单
- 23. 下拉菜单
- 24. 下拉菜单
- 25. 下拉菜单
- 26. 下拉菜单
- 27. 下拉菜单
- 28. 下拉菜单
- 29. 下拉菜单
- 30. 当前菜单颜色跨越整个下拉菜单
您是否阅读过文档并亲自尝试过? –