获取绑定到 Entry 小部件的 StringVar

2024-03-05

我正在编写一个简单的 GUI 程序,需要从 ini 文件加载默认值。我已经为 Entry 小部件指定了名称,并且可以通过以下方式获取它nametowidget方法。

但是,我找不到访问绑定到条目小部件的 StringVar 并更新其值的方法。使用调试器,我可以看到 StringVar 对象没有 tkinter master,并且它们不会出现在任何小部件子​​项中。那么我想做的事情可能吗?或者有解决方法吗?

下面是相关的函数。

def load_data(data_file):
    """
    Read an ini file and update related values
    :param data_file:
    :return:
    """
    conf = configparser.ConfigParser()
    try:
        conf.read(data_file)
        for section in conf.sections():
            try:
                container = SECTIONS[section]
                for key in conf[section]:
                    widget = container.nametowidget(key)
                    widget.set(conf[section][key])
            except KeyError:
                pass
    except configparser.Error as e:
        print(e)

Tkinter 小部件有一个getvar and setvar方法,可用于通过变量名称获取和设置变量的值。

您可以使用以下命令获取与小部件关联的变量的名称cget method.

Example:

var = tk.IntVar()
entry = tk.Entry(..., textvariable=var)
...
varname = entry.cget("textvariable")
value = entry.getvar(varname)
entry.setvar(varname, value+1)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

获取绑定到 Entry 小部件的 StringVar 的相关文章

随机推荐

  • 检查前提条件是否存在原子增量,即原子值小于指定值?

    在新标准 C 原子递增操作中 在递增值之前检查先决条件是否表明原子值小于指定值 我可以比下面的代码更容易 更快吗 int atomic inc std atomic int val int less than int new val int
  • Paypal html按钮自定义字段限制

    限制为 256 个字符customPaypal html 按钮的字段 有没有办法增加该限制 或者是否有其他我可以使用的字段 如custom1 custom2 其他 等 谢谢 不要通过自定义字段发送全部数据 而是将数据保存在数据库中 然后发送
  • 如何使用 Java/REST 将 Azure blob 从一个存储容器移动到另一个存储容器?

    有人可以帮忙吗 我正在关注 Java JDK 示例 其中有很多关于如何管理容器和 blob 的示例 但是没有说明如何从一个存储容器移动到另一个存储容器 例如 我在 StorageOne ContainerOne BlobName 上有一个
  • Angular Material Table - 如何更新现有表的列标题?

    我正在使用 Angular 7 我有一个简单的组件角材料表 https material angular io components table overview 通过某些事件 例如单击鼠标 我希望能够更新现有表的数据和标题 Before
  • 当在 Node.js 中从 firebird 中选择时,未知值

    我是火鸟的新人 我试图从数据库中获取名称 但它返回
  • 列出 emacs 中的所有顶级全局变量

    主要是为了我自己的启发 我尝试列出当前 Emacs 会话中加载的所有全局变量 我正在考虑做的是生成一个包含列出的所有功能的 HTML 文件 当然 定义函数 var 等的文件也很有用 emacs 中已经内置了一些可以提供帮助的东西吗 L 沿着
  • 将应用程序日志重定向到 docker 日志

    我的 Docker 容器生成多个应用程序日志 docker logs命令仅显示应用程序启动日志 有没有办法重定向其他日志文件 以便它们显示在docker logs命令 EDIT 我正在使用WebSphere https hub docker
  • Webpack 4 + Babel 在转译代码中保留 const

    我试图让我的代码在 Android 4 1 Webview 上运行 它不支持 ES6 但我收到此错误 未捕获的语法错误 在严格模式下使用 const babelrc 配置 plugins lodash presets babel prese
  • Google Apps 脚本中字符串的最大大小是多少?

    我正在将 csv 文件从 Gmail 附件导入到现有的 Google 电子表格中 我使用 getDataAsString 来保存整个 csv 内容 我已经尝试过不同的大小 最多可达 6000 个字符 该字符串可以包含的最大字符数是否存在 G
  • jquery ajax调用点击事件提交按钮

    我构建了一个 ajax 调用 当用户单击提交按钮时会提交该调用 我已经包含了 jquery 并编写了以下代码 取自 jquery 文档
  • 如何将两个 System.IO.Stream 实例连接成一个?

    假设我想连续向用户传输三个文件 但他不是给我一个Stream对象将字节向下推 我必须给他一个Stream他将从中提取字节的对象 我想带上我的三个FileStream对象 或者甚至更聪明 一个IEnumerable
  • 如何在 Laravel 中显示带有法语符号的验证消息?

    在 Laravel 验证中 制定了验证我的字段的规则 当我收到错误时 它会向我显示此错误 但没有法语符号 Le cin a d u00e9j u00e0 u00e9t u00e9 请注意 而不是显示此消息 Le cin a t d j pr
  • 如何在 Windows 10 上的 Visual Studio 2012 中添加 Edge 作为我的调试浏览器?

    我昨天将笔记本电脑升级到了 Windows 10 我希望在 Visual Studio 2012 中调试代码时能够使用 MS Edge 我找不到浏览器可执行文件 也不知道是否需要任何特殊的命令行参数才能使其正常工作 对此有任何提示或技巧吗
  • 修复 ColdFusion 中的 Unicode 转换问题/漏洞

    我们最近升级了安全扫描仪 它报告了一个新问题 建议的修复方法是什么 我们碰巧在 ACF9 另外 如果您有针对 CF 的漏洞利用示例 我将不胜感激 Unicode transformation issues Severity High Typ
  • ASIHTTPRequest 傻瓜书

    我是 ASIHTTPRequest 中的一个完整的虚拟人 我刚刚下载了该库并将其添加到我的项目中 现在我正在尝试了解使用它的基础知识 我找到了一些很好的例子here http iphone example blogspot com p as
  • 有没有办法发现哪些IP地址连接到数据库?

    我可以通过以下方式确定当前的连接数 db serverStatus connections 但给我的只是当前的连接数 是否有办法确定哪些 ip 已连接以及它们已分配给哪个连接号 从 mongo shell 中 这将打印客户端 IP 端口以及
  • 使用 cat 在闪亮的文本输出中插入换行符

    我正在尝试使用插入一些换行符cat and n使用一些文本输出shiny 这是我的相关部分ui R and server R 假设我想获得 t 检验的结果 并为 t df 和 p 值 单独设置一行 我正在使用闪亮的仪表板布局 样本数据 Gr
  • 如何实现一个非随机的随机数生成器?

    我需要一个随机数生成器来生成 n 和 m 之间的各种数字 但没有相同的概率 我想设置一个介于 n 和 m 之间的值 x 其中可能性最高 有没有一种简单的方法可以使用 Random 类来做到这一点 可能性应该具有二项分布或类似的形式 精确的二
  • SecCertificateRef:如何获取证书信息?

    我有一个证书 SecCertificateRef 我可以检查它是否有效 并且可以使用 SecCertificateCopySubjectSummary 提取 摘要 总结 到底是什么 我不理解术语 包含人类可读的证书内容摘要的字符串 在苹果文
  • 获取绑定到 Entry 小部件的 StringVar

    我正在编写一个简单的 GUI 程序 需要从 ini 文件加载默认值 我已经为 Entry 小部件指定了名称 并且可以通过以下方式获取它nametowidget方法 但是 我找不到访问绑定到条目小部件的 StringVar 并更新其值的方法