tkinter的Text
tkinter的Text组件怎么暂时屏蔽用户输入,过一会再取消屏蔽?过一会是什么意思?描述明确些
比如说满足什么条件或者按下按钮后开启,什么条件又关闭
Twilight6 发表于 2021-6-8 19:30
过一会是什么意思?描述明确些
比如说满足什么条件或者按下按钮后开启,什么条件又关闭
比如说实现一个函数,先屏蔽用户的输入,再插入一些内容,最后取消屏蔽 鱼cpython学习者 发表于 2021-6-8 20:40
比如说实现一个函数,先屏蔽用户的输入,再插入一些内容,最后取消屏蔽
那这样即可:
from tkinter import *
from time import sleep
from threading import Thread
def temp():
if var.get() == "屏蔽":
var.set("开启")
text.config(state=DISABLED)
else:
var.set("屏蔽")
text.config(state=NORMAL)
root = Tk()
var = StringVar()
var.set("屏蔽")
text = Text(root)
text.grid()
button = Button(root, textvariable=var, command=temp)
button.grid()
mainloop() Twilight6 发表于 2021-6-8 20:45
那这样即可:
可是这样又无法插入内容,该怎么办? Twilight6 发表于 2021-6-8 21:02
你开启就可以插入的啊,屏蔽就无法插入
好的,谢谢 鱼cpython学习者 发表于 2021-6-8 21:02
好的,谢谢
哦,我懂你意思了,我理解错你的意思,骚等
鱼cpython学习者 发表于 2021-6-8 21:02
好的,谢谢
你先点屏蔽,然后在下面输入框输入想插入的内容即可在屏蔽状态下插入内容
from tkinter import *
from time import sleep
from threading import Thread
def temp():
if var.get() == "屏蔽":
var.set("开启")
text.config(state=DISABLED)
else:
var.set("屏蔽")
text.config(state=NORMAL)
def insert_data():
text.config(state=NORMAL)
text.insert(END,entry.get())
text.config(state=DISABLED)
root = Tk()
var = StringVar()
var.set("屏蔽")
text = Text(root)
text.grid(columnspan=2)
label = Label(root, text="请输入需要插入的内容:")
label.grid(row=1, column=0, sticky=E)
entry = Entry(root)
entry.grid(row=1, column=1, sticky=W)
insert_b = Button(root, text="插入", command=insert_data)
insert_b.grid(row=2, column=0)
button = Button(root, textvariable=var, command=temp)
button.grid(row=2, column=1)
mainloop()
页:
[1]