将图像添加到 Tkinter Entry

2024-01-16

使用 tkinter,我尝试在条目小部件的边框内显示图像。 我尝试在谷歌中搜索,但没有成功,有人知道该怎么做吗?


没有任何功能或属性允许图像位于 Entry 小部件的边界内。但是,您可以很容易地模拟它,方法是将图像和条目小部件放入框架内,从条目小部件中删除边框,并确保条目小部件和框架具有相同的背景颜色。

Example:

import Tkinter as tk

class Example(tk.Frame):
    def __init__(self, parent):
        tk.Frame.__init__(self, parent, background="gray")

        frame = tk.Frame(background="white", borderwidth=1, relief="sunken",
                         highlightthickness=1)
        frame.pack(side="top", fill="x", padx=4, pady=4)

        entry = tk.Entry(frame, borderwidth=0, highlightthickness=0, background="white")
        entry.image = tk.PhotoImage(data=cancelImageData)
        imageLabel = tk.Label(frame, image=entry.image)
        imageLabel.pack(side="right", fill="y")
        entry.pack(side="left", fill="both", expand=True)

cancelImageData = '''
    R0lGODlhEAAQAPcAAAAAAAAAMwAAZgAAmQAAzAAA/wArAAArMwArZgArmQArzAAr
    /wBVAABVMwBVZgBVmQBVzABV/wCAAACAMwCAZgCAmQCAzACA/wCqAACqMwCqZgCq
    mQCqzACq/wDVAADVMwDVZgDVmQDVzADV/wD/AAD/MwD/ZgD/mQD/zAD//zMAADMA
    MzMAZjMAmTMAzDMA/zMrADMrMzMrZjMrmTMrzDMr/zNVADNVMzNVZjNVmTNVzDNV
    /zOAADOAMzOAZjOAmTOAzDOA/zOqADOqMzOqZjOqmTOqzDOq/zPVADPVMzPVZjPV
    mTPVzDPV/zP/ADP/MzP/ZjP/mTP/zDP//2YAAGYAM2YAZmYAmWYAzGYA/2YrAGYr
    M2YrZmYrmWYrzGYr/2ZVAGZVM2ZVZmZVmWZVzGZV/2aAAGaAM2aAZmaAmWaAzGaA
    /2aqAGaqM2aqZmaqmWaqzGaq/2bVAGbVM2bVZmbVmWbVzGbV/2b/AGb/M2b/Zmb/
    mWb/zGb//5kAAJkAM5kAZpkAmZkAzJkA/5krAJkrM5krZpkrmZkrzJkr/5lVAJlV
    M5lVZplVmZlVzJlV/5mAAJmAM5mAZpmAmZmAzJmA/5mqAJmqM5mqZpmqmZmqzJmq
    /5nVAJnVM5nVZpnVmZnVzJnV/5n/AJn/M5n/Zpn/mZn/zJn//8wAAMwAM8wAZswA
    mcwAzMwA/8wrAMwrM8wrZswrmcwrzMwr/8xVAMxVM8xVZsxVmcxVzMxV/8yAAMyA
    M8yAZsyAmcyAzMyA/8yqAMyqM8yqZsyqmcyqzMyq/8zVAMzVM8zVZszVmczVzMzV
    /8z/AMz/M8z/Zsz/mcz/zMz///8AAP8AM/8AZv8Amf8AzP8A//8rAP8rM/8rZv8r
    mf8rzP8r//9VAP9VM/9VZv9Vmf9VzP9V//+AAP+AM/+AZv+Amf+AzP+A//+qAP+q
    M/+qZv+qmf+qzP+q///VAP/VM//VZv/Vmf/VzP/V////AP//M///Zv//mf//zP//
    /wAAAAAAAAAAAAAAACH5BAEAAPwALAAAAAAQABAAAAiWAPcJHEiwYEFpCBMiNLhP
    WjZz4CB+A5dN2sGH2TJm+7ax4kCHEOlx3EgPHEeLDc1loydwokB6G1EJlEYRHMt6
    +1hW/IaSpreN+/ThzIYq5kyKGffV07ePpzSeMzl+UypU6aunMhtSdCcwI0t606A2
    3PjN3VVXK2NO+/iKIzZp0xB+Q4Xt4re7te4WZSgNVV+EfhkKLhgQADs=
'''

if __name__ == "__main__":
    root = tk.Tk()
    Example(root).pack(fill="both", expand=True)
    root.mainloop()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将图像添加到 Tkinter Entry 的相关文章

随机推荐

  • Tensorflow Relu 误解

    我最近在做 Udacity 深度学习课程 该课程基于TensorFlow 我有一个简单的MNIST准确率约为 92 的程序 from tensorflow examples tutorials mnist import input data
  • WT:将多行粘贴到 Windows 终端而不执行

    在原始 PowerShell 控制台中 可以在执行之前粘贴和编辑多行命令 例如这个多行脚本 Write Host 1 Write Host 2 Write Host 3 Write Host 4 产生以下输出 不幸的是 在 Windows
  • 如何批量获取字符串中某个字符的位置

    我有一个结果字符串保存在变量中RES 这个结果类似于2 3 5 0我想在 并通过一个将其发送到批处理输出ECHO命令 我一直在搜索如何使用批处理命令来执行此操作 但只得到将子字符串设置为固定位置的结果 但我如何知道这个位置 如果我知道这个职
  • ([![]]+[][[]])[+!+[]+[+[]]] 为什么以及如何计算为字母“i”? [复制]

    这个问题在这里已经有答案了 在读的时候这篇文章发表在 dzone http java dzone com articles dynamic languages have jumped我最初找到了一段 JavaScript 代码马库斯 拉格格
  • RedirectToAction 在特定操作(进程)中不起作用

    我有一个 Ajax 调用 它将调用一个名为submit在控制器中提交表单 其中如下所示 if CSConfigurationMgr IsMobileUrl Request UrlReferrer AbsoluteUri PathFromUR
  • 强制 iPhone 模拟执行 CPU 密集型任务?

    对于普通的应用程序 您永远不想这样做 但是 我正在制作一个教育应用程序 向人们展示不同的线程模型在不同的 iPhone 硬件和操作系统级别上到底会发生什么 OS 4 从根本上改变了不同的模型 IME 许多现有代码在 OS 4 上运行时不起作
  • 哑组件可以使用/渲染 redux 容器组件吗?

    In the 入门 https egghead io lessons javascript redux extracting container components filterlink guidelinesModalRedux 的视频中
  • 槽在哪个线程中执行,我可以将其重定向到另一个线程吗?

    在了解更多相关知识的同时Qt 中的信号 槽机制 http doc qt io qt 5 signalsandslots html 我很困惑插槽在哪个上下文中执行 所以我编写了以下示例来测试它 from PyQt5 Qt import I k
  • Android:直接启动正在开发的activity/fragment

    有时您必须向现有应用程序添加新的活动 片段 此活动 片段可以嵌套 以便为了访问它 用户必须打开应用程序并在到达它之前浏览 UI 的多个部分 在开发这个新的活动 片段时 每次进行更改时 我都必须重新编译整个应用程序 启动它并导航到显示新活动
  • 未显示“修订”或“请求”按钮来接受更新的 Apple 开发者计划许可协议

    我正在尝试创建新的应用程序 但 iTunes 连接顶部它向我显示以下消息 协议 税务和银行业务 需要审查更新后的 Apple 开发者计划许可协议 为了更新您现有的应用程序并向应用程序商店提交新应用程序 具有法律角色 团队代理 的用户必须在开
  • 在react中逐个使用不同类css的好方法?

    如果温度处于不同区域 我想使用不同的颜色 这是我的代码 const weatherColor setWeatherColor useState temperature humidity const colour temp hum gt le
  • C++ 中“this”指针的用途是什么? [复制]

    这个问题在这里已经有答案了 目的是什么this关键词 类中的方法不能访问同一类中的其他对等成员吗 什么情况需要打电话this在类中调用对等方法 两个主要用途 To pass this or this作为其他非类方法的参数 void do s
  • 下拉菜单对 php 页面上的查询结果进行排序

    我有一个简单的列表类型 php 页面 它根据 mysql 查询列出项目 例如 mysql select db database connBHN connBHN query rsMarket SELECT FROM my items WHER
  • PointerDownThemeAnimation 应用程序停止 WP8

    我很困惑为什么我的应用程序关闭 我添加了 PointerDownThemeAnimation 并且它工作正常 但只有一次 当我尝试再次单击它时 应用程序停止 为什么 这是我的代码 private void staryrynek1 objec
  • 使用 Babel.js 进行 Transpile Async Await 提案?

    有提案引入C 风格async await 我知道 Babel js 将 ES6 转译为 ES5 但是有没有办法让它将 async await 转译为ES5 Babel v6 从 Babel v6 开始 Babel 本身不再包含任何 Tran
  • 信号如何与序列点交互?

    C89 标准规定 At sequence points volatile objects are stable in the sense that previous evaluations are complete and subseque
  • VueJS 从不同的路线滚动到部分

    我正在尝试使用 Vue 和 Vue Router 使用历史模式 滚动到页面上的锚点 在索引页上时 滚动行为通过跳转到该部分按预期工作 但是 当我在另一个页面时 它会在顶部加载索引页面 而不是锚点指向的位置 我确信这是一件非常简单的事情 但我
  • 如何在页面底部创建dock式工具栏?

    like in http www online photoshoptutorials com 2008 08 folding corners html http www online photoshoptutorials com 2008
  • 如何将参数传递给事件处理程序?

    我有一个函数对象 我想使用 jquery 在单击时向其传递参数 但它不起作用 我不明白其背后的概念 谁能解释一下我哪里出错了 让您正在调用的函数在闭包中返回一个具有名称的函数 并通过参数传递 div click fn clik Mike v
  • 将图像添加到 Tkinter Entry

    使用 tkinter 我尝试在条目小部件的边框内显示图像 我尝试在谷歌中搜索 但没有成功 有人知道该怎么做吗 没有任何功能或属性允许图像位于 Entry 小部件的边界内 但是 您可以很容易地模拟它 方法是将图像和条目小部件放入框架内 从条目