Python 按钮标签-文本与文本变量
TTK按钮:文本与文本变量 我试图将按钮标签文本设置为“Hi”作为默认值,并在单击它时将其文本更改为“Hello” 我尝试了多种方法来改变文本 如果我将Python 按钮标签-文本与文本变量,python,user-interface,button,tkinter,ttk,Python,User Interface,Button,Tkinter,Ttk,TTK按钮:文本与文本变量 我试图将按钮标签文本设置为“Hi”作为默认值,并在单击它时将其文本更改为“Hello” 我尝试了多种方法来改变文本 如果我将文本设置为“Hi”,这很好,但是每当我添加文本变量时,它就会中断并在按钮本身上不显示文本标签 添加这两个参数是否有问题 在tkinter中构造按钮时,使用text和textvariable参数,如下所示 来自Alan D.Moore使用Tkinter进行的Python GUI编程 将tkinter作为tk导入 从tkinter导入ttk root
文本设置为“Hi”,这很好,但是每当我添加文本变量时,它就会中断并在按钮本身上不显示文本标签
添加这两个参数是否有问题
在tkinter中构造按钮时,使用text
和textvariable
参数,如下所示
来自Alan D.Moore使用Tkinter进行的Python GUI编程
将tkinter作为tk导入
从tkinter导入ttk
root=tk.tk()
tvar=tk.StringVar()
def swaptext():
如果tvar.get()
tvar.set('There')
其他:
tvar.set('Hi')
#my_button=ttk.button(父项,text='Hi',textvariable=tvar,command=swaptext)#按钮标签为空
my_button=ttk.button(parent,text='Hi',command=swaptext)#可以工作,但没有可调用的文本变量来交换文本
我的按钮包()
root.mainloop()
如果默认的text
值设置为“Hi”,我希望按钮立即显示为“Hi”,但实际上它一开始是空的。虽然它的开头为空,但当我单击按钮时,它会从以下位置切换:
- 空白-->高
- 您好-->您好
- 您好-->您好(等等)
有人能告诉我我做错了什么,为什么我的默认按钮text
值和textvariable
我找到的最接近答案是:,但这是关于条目构造函数的,它似乎没有将text
作为参数
如果我错过了这个问题的答案,我很抱歉,但我没有看到任何地方列出任何答案。您没有为StringVar设置默认值
import tkinter as tk
from tkinter import ttk
root = tk.Tk()
tvar = tk.StringVar(value="Hi")
def swaptext():
if tvar.get() == 'Hi':
tvar.set('There')
else:
tvar.set('Hi')
my_button = ttk.Button(root, textvariable=tvar, command=swaptext)
my_button.pack()
root.mainloop()
您没有为StringVar
设置默认值
import tkinter as tk
from tkinter import ttk
root = tk.Tk()
tvar = tk.StringVar(value="Hi")
def swaptext():
if tvar.get() == 'Hi':
tvar.set('There')
else:
tvar.set('Hi')
my_button = ttk.Button(root, textvariable=tvar, command=swaptext)
my_button.pack()
root.mainloop()
天啊!这么简单的解决办法。这对我来说是新的,我应该查阅StringVar()
的文档,我衷心感谢您的帮助,希望这本书能详细说明!谢谢谢谢谢谢!!天啊!这么简单的解决办法。这对我来说是新的,我应该查阅StringVar()
的文档,我衷心感谢您的帮助,希望这本书能详细说明!谢谢谢谢谢谢!!