当前位置: 首页 > 知识库问答 >
问题:

Tkinter按钮禁用不工作

史同化
2023-03-14

我是Python新手,对GUI编程更是新手。

我有一个按钮和两个旋转箱,我想在点击开始按钮后禁用它们。我在谷歌上搜索了5种禁用Tkinter按钮的不同方法,但似乎都不起作用。理论上,旋转箱应该以同样的方式被禁用,但我只是运气不好。对整个图形用户界面感到非常沮丧。

self.gps_comself.arduino_com是两个spinbox

正如您所看到的,我尝试对按钮使用update(),但它不起作用。我见过各种各样的代码,在所有的大写字母、大写字母和不同的引号中都使用disabled。此当前语法不提供来自Spyder的警告/错误。

我以为很容易找到这个问题的答案,但我已经研究了几个小时了。

def OnButtonClickStart(self):
    self.labelVariable.set( self.entryVariable.get())
    self.entry.focus_set()
    self.entry.selection_range(0, Tkinter.END)
    self.button_start.config(state = 'DISABLED')
    self.button_start.update()
    self.gps_com.config(state = 'DISABLED')
    self.arduino_com.config(state = 'DISABLED')

共有1个答案

子车海
2023-03-14

试试这段代码,看看文本是否更新

import tkinter as tk

class Window():

    def __init__(self, root):

        self.frame = tk.Frame(root)
        self.frame.grid()

        self.i = 0
        self.labelVar = tk.StringVar()
        self.labelVar.set("This is the first text: %d" %self.i) 

        self.label = tk.Label(self.frame, text = self.labelVar.get(), textvariable = self.labelVar)
        self.label.grid(column = 0, row = 0)

        self.button = tk.Button(self.frame, text = "Update", command = self.updateLabel)
        self.button.grid(column = 1, row = 0)

        self.enableButton = tk.Button(self.frame, text = "Enable Update Button", state = 'disabled', command = self.enable)
        self.enableButton.grid(column = 2, row = 0)

    def updateLabel(self):

        self.i += 1
        self.labelVar.set("This is the new text: %d" %self.i)
        self.button.config(state = 'disabled')
        self.enableButton.config(state = 'active')

    def enable(self):

        self.button.config(state = 'active')
        self.enableButton.config(state = 'disabled')

root = tk.Tk()
window = Window(root)
root.mainloop()

如果这样做有效,那么您要么是a)使用了错误的关键字(“disabled”,在Python 2.5/3.4中都是小写的(我昨晚测试了3.4)),要么是b)您试图调用的函数没有按照tobias_k的建议正确执行。

 类似资料:
  • 问题内容: 单击后,我想在iOS上禁用按钮()。我是开发iOS的新手,但我认为目标上的等效代码-C是这样的: 但是我不能迅速做到这一点。 问题答案: Swift中的布尔值是。 应该做。 这是的属性的Swift文档。

  • 我不知道如何使Tkinter变灰。 我试着使用,但它不起作用,我得到一个错误,说 _特金特。TclError:错误选项“-enable”:必须是-column、-columnspan、-in、-ipadx、-ipady、-padx、-pady、-row、-rowspan或-sticky 如何临时禁用?

  • 我正在用javaFX在netbeans中编写一个程序视图中有几个按钮和一些坏按钮(比如炸弹是扫雷舰),我试图在按下坏按钮时冻结程序,但我找不到如何操作 谢谢

  • 我有一个带有两个按钮的tkinter应用程序<代码>运行应用程序和。我不想让最终用户有机会单击,如果他没有先单击。 因此,按钮需要在首先单击按钮后取消禁用。 在下面的代码中,我创建了一个检查器函数,它应该在上面完成,但是存储数据按钮总是处于禁用状态。 这是我的代码:

  • 问题内容: 请在http://plnkr.co/edit/9dyBVZh67sxmIqUQB50S?p=preview上的 plunkr代码中查看我的示例 我有4个按钮,其中两个按钮由于某种情况而被禁用。 我希望能够在两个被禁用的按钮上显示工具提示,第一个被禁用的按钮显示“ Test itemName2不可用”,第二个被禁用的按钮显示“ Test itemName4不可用”,而另一个则没有工具提示

  • 我有一个问题使添加到购物车按钮工作。不确定是哪一部分代码导致了这个问题。但是,问题的链接是:https://barkerbespoke.com/collections/tie-collection/products/black-wool 你有什么建议?