Tkinter如何更改组合框小部件箭头图像

丹尼尔·赫克森

我正在尝试更改组合框窗口小部件中的箭头图像。我了解您需要创建一个新元素并为其设置样式。我一直在寻找有关如何执行此操作的信息,但似乎无法在网上找到任何内容。在下面的代码中,我创建图像并将其显示在标签中,但是我希望该图像作为组合框箭头图像。

from tkinter import *
from tkinter import ttk

root_window = Tk()
style = ttk.Style()

photo = """
R0lGODlhDQAQAPQAAFw1Zl42Z2A6amE6amI7a2I8a2I8bKeHqK6BqbSLsLWLsLuV
t7ufu7yfu72hvL6ivb6ivr+jvsKgvsWlwseow8iqxcmrxs+1zNC2zdO70dS90tW9
0tW+0wAAAAAAAAAAACH5BAEAAB0ALAAAAAANABAAAAVMYCd2QFmOKJltGZCOwMZt
7kvKtH3P9RvzutgmZ4tdiL6NBUkyGTaSjMHkEjgyGcuiwnIIRoWIJUG2eFPhCYJy
fhUkmLbNcPjqRL1RCAA7
"""

photo = PhotoImage(data=photo)
l = ttk.Label(root_window, image=photo).grid()

style.layout(
    'Mystyle.TCombobox', [(
        'Combobox.field', {
            'sticky': NSEW,
            'children': [(
                'Combobox.downarrow', {
                    'side': 'right',
                    'sticky': NS
                }
            ), (
                'Combobox.padding', {
                    'expand': '1',
                    'sticky': NSEW,
                    'children': [(
                        'Combobox.textarea', {
                            'sticky': NSEW
                        }
                    )]
                }
            )]
        }
    )]
)

style.element_create('Mystyle.TCombobox.downarrow', 'image', photo)

cbo = ttk.Combobox(root_window, values=('one', 'two', 'three'), style='Mystyle.TCombobox')
cbo.grid()

root_window.mainloop()
布莱恩·奥克利(Bryan Oakley)

您的位置非常接近,只需要使用自定义样式的元素即可。在以下示例中,请注意如何Mystyle.TCombobox.downarrow在组合框中用作子级之一:

style.element_create('Mystyle.TCombobox.downarrow', 'image', photo)
style.layout(
    'Mystyle.TCombobox', [(
        'Combobox.field', {
            'sticky': NSEW,
            'children': [(
                'Mystyle.TCombobox.downarrow', {
                    'side': 'right',
                    'sticky': NS
                }
            ), (
                'Combobox.padding', {
                    'expand': '1',
                    'sticky': NSEW,
                    'children': [(
                        'Combobox.textarea', {
                            'sticky': NSEW
                        }
                    )]
                }
            )]
        }
    )]
)

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何居中Tkinter小部件?

来自分类Dev

更改组合框文本,但未选择项目

来自分类Dev

如何在Windows 8应用商店中更改组合框箭头的颜色

来自分类Dev

WPF更改组合框的背景色

来自分类Dev

MS Access Forms:如何动态更改组合框中的选择选项?

来自分类Dev

在Tkinter文本框小部件中更改每隔一行文本的背景颜色

来自分类Dev

Tkinter:如何将图像插入文本小部件

来自分类Dev

更改组合框边框颜色-更改SelectedIndex时闪烁

来自分类Dev

如何更改tkinter小部件的边框颜色?

来自分类Dev

如何将组合框小部件中的选择(符号)定义为(全局)变量?

来自分类Dev

在Tkinter中更改按钮小部件的大小

来自分类Dev

如何修改组合框的选定文本?

来自分类Dev

更改组合框时更新QAbstractTableModel

来自分类Dev

如何在运行时更改组合框的下拉样式?

来自分类Dev

如何更改组合框WPF的CornerRadius

来自分类Dev

更改组合框的样式和颜色

来自分类Dev

更改组合框的颜色(显示箭头按钮的组合框的标题框)

来自分类Dev

如何更改组合框C#mysql的起始位置

来自分类Dev

更改组合框JAVA的标题

来自分类Dev

Python 3.4,如何增加tkinter spinbox小部件箭头的大小?

来自分类Dev

解开Tkinter的文本框小部件

来自分类Dev

更改组合框的ListItem文本而不更改其值

来自分类Dev

如何更改组合框背景

来自分类Dev

如何在禁用状态下更改组合框的前景?

来自分类Dev

如何将Qt组合框与按钮和某种显示图片的小部件连接?

来自分类Dev

自动完成组合框小部件强制更改

来自分类Dev

如何更改 QMainWindow 中央小部件的背景图像?

来自分类Dev

如何更改 tkinter txt 小部件颜色

来自分类Dev

在图像框架上覆盖 tkinter 小部件

Related 相关文章

  1. 1

    如何居中Tkinter小部件?

  2. 2

    更改组合框文本,但未选择项目

  3. 3

    如何在Windows 8应用商店中更改组合框箭头的颜色

  4. 4

    WPF更改组合框的背景色

  5. 5

    MS Access Forms:如何动态更改组合框中的选择选项?

  6. 6

    在Tkinter文本框小部件中更改每隔一行文本的背景颜色

  7. 7

    Tkinter:如何将图像插入文本小部件

  8. 8

    更改组合框边框颜色-更改SelectedIndex时闪烁

  9. 9

    如何更改tkinter小部件的边框颜色?

  10. 10

    如何将组合框小部件中的选择(符号)定义为(全局)变量?

  11. 11

    在Tkinter中更改按钮小部件的大小

  12. 12

    如何修改组合框的选定文本?

  13. 13

    更改组合框时更新QAbstractTableModel

  14. 14

    如何在运行时更改组合框的下拉样式?

  15. 15

    如何更改组合框WPF的CornerRadius

  16. 16

    更改组合框的样式和颜色

  17. 17

    更改组合框的颜色(显示箭头按钮的组合框的标题框)

  18. 18

    如何更改组合框C#mysql的起始位置

  19. 19

    更改组合框JAVA的标题

  20. 20

    Python 3.4,如何增加tkinter spinbox小部件箭头的大小?

  21. 21

    解开Tkinter的文本框小部件

  22. 22

    更改组合框的ListItem文本而不更改其值

  23. 23

    如何更改组合框背景

  24. 24

    如何在禁用状态下更改组合框的前景?

  25. 25

    如何将Qt组合框与按钮和某种显示图片的小部件连接?

  26. 26

    自动完成组合框小部件强制更改

  27. 27

    如何更改 QMainWindow 中央小部件的背景图像?

  28. 28

    如何更改 tkinter txt 小部件颜色

  29. 29

    在图像框架上覆盖 tkinter 小部件

热门标签

归档