单击按钮之前执行 Tkinter 按钮命令[重复]

2023-11-29

我创建了一个框架,其中我有两个浏览按钮,我想浏览两个以“.txt”扩展名结尾的文件并将其打印在屏幕上。

在我的场景中,在按下框架上的按钮之前浏览调用的函数。我期待当我按下按钮时它应该被调用。附完整代码。请有人纠正我做错了什么。

from Tkinter import *
import tkFileDialog as filedialog

global filename

root = Tk()

def browsefunc(entry):
    entry = filedialog.askopenfilename(filetypes=[("Text files","*.txt")])
    print entry


browsebutton1 = Button(root, text="Browsefile1", command=browsefunc("TXT_file1"))
browsebutton1.pack()

browsebutton2 = Button(root, text="Browsefile2", command=browsefunc("TXT_file2"))
browsebutton2.pack()


root.mainloop()

因为你正在通过browsefuncfunction 函数启动时运行的参数或参数。这是因为 python 运行代码的方式。您可以使用lambda表达式来解决这个问题

browsebutton1 = Button(root, text="Browsefile1", command=lambda: browsefunc("TXT_file1"))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

单击按钮之前执行 Tkinter 按钮命令[重复] 的相关文章

随机推荐

  • 如何使用 Glide 获取 imageview 上的 URI

    我正在使用 Glide 将图像从服务器加载到 ImageView 我想知道是否可以从 imageview 本身中提取该 URI ImageView contentImage ImageView findViewById R id conte
  • 使用 tdbquery 查询 TDB 中的命名 RDF 图

    我正在尝试使用 tdbquery 程序查询新创建的 TDB 数据库 但是 我很难编写针对正确命名图的查询 我正在做以下事情 首先创建一个新数据集并添加一个名为 facts 的名称图 Dataset dataset TDBFactory cr
  • 我应该释放使用字符串文字初始化的 char* 吗?

    我应该自由吗char 使用字符串文字初始化变量时 对我来说 语法会让我假设它们只是堆栈分配的 但这个例子告诉我 它们不是 include
  • 如何foreach具有键值的多维数组

    我有一个带有键值的多维数组 我想循环该数组中的数据 但我不知道如何 这是我的数组 myArray Array 134 gt Array 1138 gt Array id gt 1138 qty gt 1 price gt 4900000 n
  • x64 汇编函数(调用/返回与推送/弹出/跳转)

    使用内置调用和返回指令与手动压入和弹出堆栈以及使用函数跳转之间有什么区别 从功能上讲 如果你做得正确 什么也没有 然而 它需要更多的指令和 或寄存器来模拟call ret using push pop 当然如果你真的想发挥到极致 你也可以效
  • 如何显示 JQPLOT 图形而不是长文本

    我在控制器类中有一个返回 JSON 数据的方法 public ActionResult ChartDataJSON Chart chart new Chart DataSet ds dbLayer GetChartData DataTabl
  • D3js 代码在调用两次时会复制图表而不是刷新

    这是我的 D3js 代码 function ShowGraph data var w 600 h 600 padding 36 p 31 barwidth 1 var bar height d3 scale linear domain d3
  • git分支工作流程策略

    我是 git 的新手 对 Git 有一点了解 我公司目前有1个方案 该方案分为5个产品 每个产品由不同的团队处理 目前我公司 git 有 5 个分支机构 例如 dev 该分支供开发人员构建程序 dev program com test al
  • 在 jsdom 加载的脚本中设置全局变量

    我正在尝试在 Node js 中运行一些浏览器代码以简化测试 deasync就是这个原因 目前 我使用jsdom解析唯一的html文件 起初 我试图让它也加载脚本 这些脚本链接在
  • 从文本文件中获取数据并将其显示在html表格中

    我为每一行都有一个这种模式的文本文件 Username Score 我正在尝试以此创建一个记分板 这是我的尝试 table width 200 border 1 tr td width 85 Nom td td width 99 Score
  • 如何循环访问 For 循环容器中以数字形式存储的日期值?

    我有一个For Loop Container使用日期作为InitExpression 加载日期 但该值采用数字格式 20120229 我需要这种方式 因为我无法修改它 现在 我想设置AssingExpression值以这样的方式 加载日期变
  • Oracle SQL相关更新

    我有三张桌子 t1 columns a c t2 columns a b t3 columns b c d 现在我想要的是用 t3 d 更新 t1 c 但我不能只使用 t1 c t3 c 从 t3 更新 t1 我还必须遍历 t3 b t2
  • 从 google apps 脚本发送 iso-8859-1 字符

    我正在尝试调用从谷歌应用程序脚本发送短信的服务 该服务需要 ISO 8859 1 格式的数据 下面的代码发送一条消息 其中 为坏字符 function sendSMS var doc SpreadsheetApp getActiveSpre
  • 列表上的 Groovy 点表示法

    我不明白 Groovy 中以下构造的目的 每当你有一些东西的集合时 就调用它items 您只需访问集合上的属性即可映射该属性 即 items prop items collect it prop 这对我来说看起来很奇怪 因为我认为第一个符号
  • 警告:mysqli::mysqli():(HY000/1045):[重复]中的用户“database”@“localhost”(使用密码:NO)访问被拒绝

    这个问题在这里已经有答案了 我正在尝试使用 php 连接数据库 但出现此错误 警告 mysqli mysqli HY000 1045 第 7 行 C wamp64 www Login test 2 0 connectivity php 中的
  • 如何从消息队列中删除消息(仅当其格式正确时)?

    我想从一个队列中获取消息并将其发送到数据库 我只想在特定格式下才这样做 如果我使用Receive直接调用方法 访问时出现异常Body的消息 我失去了消息 因为Receive的方法MessageQueue从队列中删除消息 为了避免丢失消息 现
  • 通用列表 - 移动列表中的项目

    所以我有一个通用列表和一个oldIndex and a newIndex value 我想将物品移至oldIndex to newIndex 尽可能简单 有什么建议么 Note 该项目应位于以下项目之间 newIndex 1 and new
  • 无法导入 facebook-sdk 4.0.1

    我有 android studio 1 1 0 我刚刚创建了一个新项目 我正在尝试导入新的 facebook sdk 4 0 1 但无法执行此操作 我遵循脸书入门 But can not get it work My app structu
  • 如何检查 URL 是否有效

    如何检查字符串是否是有效的 URL 例如 http hello it gt yes http bra ziz gt no 如果这是一个有效的 URL 我如何检查它是否相对于图像文件 Notice 正如 CGuess 所指出的 这个问题存在一
  • 单击按钮之前执行 Tkinter 按钮命令[重复]

    这个问题在这里已经有答案了 我创建了一个框架 其中我有两个浏览按钮 我想浏览两个以 txt 扩展名结尾的文件并将其打印在屏幕上 在我的场景中 在按下框架上的按钮之前浏览调用的函数 我期待当我按下按钮时它应该被调用 附完整代码 请有人纠正我做