python开发_tkinter_获取文本框内容_给文本框添加键盘输入事件

时间:2023-03-08 22:01:06
python开发_tkinter_获取文本框内容_给文本框添加键盘输入事件

在之前的blog中有提到python的tkinter中的菜单操作

python开发_tkinter_窗口控件_自己制作的Python IDEL_博主推荐

python开发_tkinter_窗口控件_自己制作的Python IDEL_博主推荐(二)

python开发_tkinter_菜单选项中英文切换_菜单选项不可用操作_博主推荐

python开发_tkinter_复选菜单

python开发_tkinter_单选菜单_不可用菜单操作

python开发_tkinter_多级子菜单

python开发_tkinter_获取单选菜单值

下面是tkinter的获取文本框内容_给文本框添加键盘输入事件的操作

运行效果:

在输入的时候,单击回车键,触发:print_contents()

python开发_tkinter_获取文本框内容_给文本框添加键盘输入事件

==========================================================

代码部分:

==========================================================

 from tkinter import *

 __author__ = {'name' : 'Hongten',
'mail' : 'hongtenzone@foxmail.com',
'blog' : 'http://www.cnblogs.com/',
'QQ': '',
'created' : '2013-09-11'} # This program shows how to make a typein box shadow a program variable.
flag = True
class App(Frame):
def __init__(self, master=None):
Frame.__init__(self, master)
self.pack() self.entrythingy = Entry(self)
self.entrythingy.pack() self.button = Button(self, text="Uppercase The Entry",
command=self.upper)
self.button.pack() # here we have the text in the entry widget tied to a variable.
# changes in the variable are echoed in the widget and vice versa.
# Very handy.
# there are other Variable types. See Tkinter.py for all
# the other variable types that can be shadowed
self.contents = StringVar()
self.contents.set("this is a variable")
self.entrythingy.config(textvariable=self.contents) # and here we get a callback when the user hits return. we could
# make the key that triggers the callback anything we wanted to.
# other typical options might be <Key-Tab> or <Key> (for anything)
self.entrythingy.bind('<Key-Return>', self.print_contents) def upper(self):
# notice here, we don't actually refer to the entry box.
# we just operate on the string variable and we
# because it's being looked at by the entry widget, changing
# the variable changes the entry widget display automatically.
# the strange get/set operators are clunky, true...
global flag
flag = not flag
if not flag:
str = self.contents.get().upper()
self.contents.set(str)
else:
str = self.contents.get().lower()
self.contents.set(str)
print('the contents is : ', self.contents.get()) def print_contents(self, event):
print("hi. contents of entry is now ---->", self.contents.get()) root = App()
root.master.title("Foo")
root.mainloop()

参考资料:

http://www.oschina.net/code/explore/Python-3.1.3/Demo/tkinter/matt/entry-with-shared-variable.py