问题标签 [tkinter-button]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - tkinter 的单选按钮仅适用于最后一次选择
我正在制作一个角色创建者,我需要询问用户他们角色的性别是什么。我有根据性别引用的代词列表,但由于某种原因,它们仅对最后一个选项有效。我一直在使用单选按钮让用户选择角色的性别。
我有最后一个选择是不分性别,每次运行程序时,无论我选择什么,它总是使用不分性别的代词。我不确定我还能如何解决这个问题,我尝试在 for 循环之外单独创建每个按钮,我尝试将函数放在不同的位置,但没有任何效果。
这是我的代码片段:
python - 在函数之外创建按钮和标签并在 Tkinter 需要时将它们网格化是不是更好的礼仪?
例如,我正在尝试创建一个问候标签,上面写着“欢迎来到......”所以这样做更好:
或将 Label 包含在函数之外,因为它只会像这样使用一次并根据需要调用它:
另外,我们应该在 main() 之前还是之后执行 root.mainloop()?
python - 如何获取单击的按钮的值
我有一些 python 代码使用我的 SQL 表中的数据生成按钮。有没有办法我可以获取我选择的按钮的文本,因为我拥有的代码只会检索 for 循环中的最后一个值。我不能为每个按钮创建一个变量,因为每个站点都有不同数量的房间。
谢谢!
python - tkinter 按钮功能调用:多次按下多次调用相同的功能
我正在尝试使用 omxplayer 和 tkinter 制作 Raspberry Pi 媒体播放器。
我从 USB 驱动器(或本地文件夹)中抓取多达 16 个视频,并将它们显示为按钮网格上的缩略图。当按下按钮时,它会使用 omxplayer 全屏播放该视频(此时您无法再访问 tkinter 窗口,直到视频结束)。基本上我只想在没有视频播放的情况下启用视频选择。
我面临的问题是在一个按钮上多次按下,或者在视频开始播放之前按下其他按钮。这会导致所有视频排队并立即一个接一个地播放。在第一个视频(从第一次按下按钮开始播放)播放完毕之前,我不希望后续按下进行注册。我尝试设置一个布尔变量 video_is_playing,并在函数调用中检查其状态,但它从未进入 else 情况。
我尝试在您按下任何按钮后禁用所有按钮,然后在视频播放完毕后全部启用它们,我尝试使用变量来检查视频是否播放完毕,以及我能想到的几乎所有其他操作防止多次按下按钮。
这是我的代码的某些部分(对不起,如果它看起来很长,但我认为包含的所有内容都是相关的):
我使用 functools.partial() 将 i, j 索引传递给 play_vid 函数,因此我可以使用这些索引来了解要播放列表中的哪个视频。这是我导入的所有内容:
附带说明:有没有更好的方法来完成我想用按钮网格做的事情?我希望每个按钮都调用相同的功能但播放不同的视频,有什么我可以使用的属性吗?
python-3.x - 在tkinter中单击时如何删除网格按钮
我正在尝试在网格按钮上安排一个有几个单词的句子。当单击该句子的一个单词时,我想删除该网格按钮的单词,然后将其移动到另一行网格按钮。如何仅删除单击的那个网格按钮?反复点击,这些文字会从原来的网格按钮位置移动到其他位置,并一一消失。
不起作用。它给出了这个错误“TypeError:grid_forget()得到了一个意外的关键字参数'row'
我该如何解决这个问题?提前致谢。
代码如下,它可以移动但不能删除。
预期结果:点击前洗牌:(有做书吗?一个你)-->点击时如何删除
从点击移动后回答单词:(你有书吗?)
python - 创建一个按钮列表,其中每个按钮都会记住其相应的命令
我创建了一个列表和一个循环,将新按钮添加到该列表中。唯一的问题是按钮似乎不记得它们的适当命令,并且总是必须回调x
循环中的变量。
该函数以与文本相同的方式num_pressed
使用该变量x
,除了文本在定义后保持不变,但命令没有。
因此,一旦创建了所有按钮,就调用命令,x = 8
因为这就是循环结束的地方。所以最后他们都调用了命令num_pressed(9)
如何让命令记住它应该与文本相同的值?也许为每个按钮分配某种值,然后根据存储在按钮本身中的值分配命令?
旁注:我还没有找到一种方法,但应该可以使用该方法.cget('text')
,因为按钮的文本恰好与应该使用的变量具有相同的值num_pressed
。
python - 有没有办法在单击时更改迭代创建的按钮的图像?
这些按钮是在一个更大的循环中创建的,通过以下代码迭代 i 然后 j:
具有更改按钮配置的功能:
但是,这不起作用,就像我单击任何按钮一样,它只会更改 btn[i][j] 的图像,其中 i 和 j 是在循环的最后一次迭代中达到的值。这些按钮用于形成一个网格,在这种情况下,单击任何按钮都会更改最后一行中的最后一个元素。有什么方法可以使在创建按钮时声明命令时使用的 i 和 j 固定到该特定按钮?
python - 在 Tkinter 中,padx 用作小部件中的参数和网格函数中的参数时有何不同?
尽管具有相同的填充值,但x
按钮y
具有相同的大小并且显示在距窗口左边框不同的距离处。另外,padx
值的单位是什么?
python - 我正在尝试做一个简单的数学运算,但它给了我一个错误
我试图做一个简单的数学运算,当你给出正确答案时它会说“正确”,而当你做错时它会说“错误”;但是,它给出了一个错误:
Tkinter 回调 Traceback 中的异常(最近一次调用最后一次):文件“C:\Users\yu.000\AppData\Local\Programs\Python\Python38-32\lib\tkinter_init _.py ”,第 1883 行,调用 返回self.func(*args) TypeError: check() 缺少 1 个必需的位置参数:'entry'
这是代码: