115 lines
3.7 KiB
Markdown
115 lines
3.7 KiB
Markdown
|
|
# python Tkinter–更改按钮的状态
|
|||
|
|
|
|||
|
|
> 原文:<https://www.askpython.com/python-modules/tkinter/change-button-state>
|
|||
|
|
|
|||
|
|
在本 Python 教程中,我们将学习如何使用 Tkinter 来检查和改变按钮的状态。
|
|||
|
|
|
|||
|
|
首先,我们必须首先在我们的 Python 环境中安装 Tkinter。我们将看到一个图形用户界面窗口,在这里我们可以通过按下 Tkinter 按钮来修改它的状态。
|
|||
|
|
|
|||
|
|
首先,我们必须掌握 Python Tkinter 中的状态是什么。
|
|||
|
|
|
|||
|
|
Tkinter 是一个 Python 包,允许我们设计自己的图形用户界面(GUI)。Tkinter 按钮有两种状态:正常和禁用。在常规状态下,我们可以按下按钮;但是,在禁用状态下,我们不能单击该按钮。
|
|||
|
|
|
|||
|
|
因此,在本教程中,我们将学习 Tkinter 按钮状态。
|
|||
|
|
|
|||
|
|
* * *
|
|||
|
|
|
|||
|
|
## 实现按钮状态
|
|||
|
|
|
|||
|
|
让我们从所提供的挑战的编码部分开始。首先,导入 Tkinter 包。现在,我们将创建一个 app 对象,并将窗口大小设置为 200 x 200。
|
|||
|
|
|
|||
|
|
```py
|
|||
|
|
import tkinter as tk
|
|||
|
|
app = tk.Tk()
|
|||
|
|
app.geometry("200x200")
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
我们将再添加两个按钮,按钮 1 和按钮 2。我们将提供一个参数作为应用程序,它将显示在应用程序窗口中,我们将通过将文本属性设置为“Python Button 1”来给它命名
|
|||
|
|
|
|||
|
|
通过向按钮 1 的状态提供值 tk,我们将指示它被禁用。已禁用。
|
|||
|
|
|
|||
|
|
类似地,在按钮 2 中,我们将提供关于某个函数名称的指令,以便当我们点击该按钮时,将执行下面的函数。
|
|||
|
|
|
|||
|
|
作为一个功能,我们为它们提供了 switchButtonState。该功能将在后面定义。我们还将使用包来放置这两个按钮。
|
|||
|
|
|
|||
|
|
```py
|
|||
|
|
button1 = tk.Button(app, text="Python Button 1",state=tk.DISABLED)
|
|||
|
|
button2 = tk.Button(app, text="EN/DISABLE Button 1",command = switchButtonState)
|
|||
|
|
button1.pack()
|
|||
|
|
button2.pack()
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
下面的功能将改变按钮的状态。点击按钮,如果按钮 1 的状态为正常,则变为禁用状态;否则,它将保持正常。
|
|||
|
|
|
|||
|
|
```py
|
|||
|
|
def switchButtonState():
|
|||
|
|
if (button1['state'] == tk.NORMAL):
|
|||
|
|
button1['state'] = tk.DISABLED
|
|||
|
|
else:
|
|||
|
|
button1['state'] = tk.NORMAL
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
最后,我们必须使用 app.mainloop()来执行应用程序。
|
|||
|
|
|
|||
|
|
```py
|
|||
|
|
app.mainloop()
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
通过单击按钮 2,您现在可以修改按钮 1 的状态。
|
|||
|
|
|
|||
|
|
* * *
|
|||
|
|
|
|||
|
|
## 使用 Python tkinter 更改按钮的状态
|
|||
|
|
|
|||
|
|
```py
|
|||
|
|
import tkinter as tk
|
|||
|
|
|
|||
|
|
def switchButtonState():
|
|||
|
|
if (button1['state'] == tk.NORMAL):
|
|||
|
|
button1['state'] = tk.DISABLED
|
|||
|
|
else:
|
|||
|
|
button1['state'] = tk.NORMAL
|
|||
|
|
|
|||
|
|
app = tk.Tk()
|
|||
|
|
app.geometry("200x200")
|
|||
|
|
button1 = tk.Button(app, text="Python Button 1",state=tk.DISABLED)
|
|||
|
|
button2 = tk.Button(app, text="EN/DISABLE Button 1",command = switchButtonState)
|
|||
|
|
button1.pack()
|
|||
|
|
button2.pack()
|
|||
|
|
|
|||
|
|
app.mainloop()
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
* * *
|
|||
|
|
|
|||
|
|
**输出屏幕**
|
|||
|
|
|
|||
|
|

|
|||
|
|
|
|||
|
|
Change Btn States Output 1
|
|||
|
|
|
|||
|
|

|
|||
|
|
|
|||
|
|
Change Btn States Output 2
|
|||
|
|
|
|||
|
|
* * *
|
|||
|
|
|
|||
|
|
## 结论
|
|||
|
|
|
|||
|
|
恭喜你!您刚刚学习了如何更改按钮的状态。希望你喜欢它!😇
|
|||
|
|
|
|||
|
|
喜欢这个教程吗?无论如何,我建议你看一下下面提到的教程:
|
|||
|
|
|
|||
|
|
1. [Python Tkinter 教程:了解 Tkinter 字体类](https://www.askpython.com/python-modules/tkinter/tkinter-font-class)
|
|||
|
|
2. [Python Tkinter 项目:随机移动号码生成器](https://www.askpython.com/python-modules/tkinter/random-mobile-number-generator)
|
|||
|
|
3. [Tkinter StringVar 示例–Tkinter 教程](https://www.askpython.com/python-modules/tkinter/stringvar-with-examples)
|
|||
|
|
4. [Tkinter int var–带示例的 Tkinter 教程](https://www.askpython.com/python-modules/tkinter/tkinter-intvar)
|
|||
|
|
|
|||
|
|
感谢您抽出时间!希望你学到了新的东西!!😄
|
|||
|
|
|
|||
|
|
* * *
|