• Tkinter学习笔记-2


    事件处理模型

    GUI组件根据用户的交互情况生成事件

    异步事件驱动的程序:程序将事件绑定到图形组件上,并实现了事件的处理程序(回调函数)来处理GUI事件

    文本框

    用于输入文本,程序员用来显示文本

    通过Entry类创建

    用户按下Enter键触发Entry组件的<Return>事件

     1 # SimpleEntry.py
     2 # Entry compnents and event binding demonstration
     3 
     4 from Tkinter import *
     5 from tkMessageBox import *
     6 
     7 class EntryDemo( Frame ):
     8     """ Demonstrate Entrys and Event binding """
     9 
    10     def __init__(self):
    11         """ Create, pack and bind events to four Entrys """
    12 
    13         Frame.__init__( self )
    14         self.pack( expand = YES, fill = BOTH )
    15         self.master.title( "Testing Entry Components" )
    16         self.master.geometry( "325x100" ) # width x length
    17 
    18         self.frame1 = Frame( self )
    19         self.frame1.pack( pady = 5 )
    20 
    21         self.text1 = Entry( self.frame1, name = "text1" )
    22 
    23         # bind the Entry component to event
    24         self.text1.bind( "<Return>", self.showContents )
    25         self.text1.pack( side = LEFT, padx = 5 )
    26 
    27         self.text2 = Entry( self.frame1, name = "text2" )
    28 
    29         # insert text into Entry component text2
    30         self.text2.insert( INSERT, "Enter text here" )
    31         self.text2.bind("<Return>", self.showContents )
    32         self.text2.pack( side = LEFT, padx = 5 )
    33 
    34         self.frame2 = Frame( self )
    35         self.frame2.pack( pady = 5 )
    36 
    37         self.text3 = Entry( self.frame2, name = "text3" )
    38         self.text3.insert( INSERT, "Uneditable text field" )
    39 
    40         # prohibit user from altering text in Entry component text3
    41         self.text3.config( state = DISABLED )
    42         self.text3.bind("<Return>", self.showContents )
    43         self.text3.pack( side = LEFT, padx = 5 )
    44 
    45         # text in Entry component text4 appears as *
    46         self.text4 = Entry(self.frame2, name = "text4", show = "*" )
    47         self.text4.bind("<Return>", self.showContents )
    48         self.text4.pack( side = LEFT, padx = 5 )
    49 
    50     def showContents( self, event ):
    51         """ Display the contents of the Entry """
    52 
    53         # acquire name of Entry component that genereated event
    54         theName = event.widget.winfo_name()
    55 
    56         # acquire contents of Entry component that generated event
    57         theContents = event.widget.get()
    58         showinfo( "Message", theName + ":" + theContents)
    59 
    60 
    61 demo = EntryDemo()
    62 
    63 demo.mainloop()
  • 相关阅读:
    逆序对
    【模板】树状数组 1
    【模板】树状数组2
    发射站
    质量检测
    【模板】ST表
    winform ComBox绑定数据
    JavaScript CheckBox实现全选和部分选择
    webbrowser内容滚动(javascript内容无缝滚动)
    double? int?
  • 原文地址:https://www.cnblogs.com/tmmuyb/p/4162097.html
Copyright © 2020-2023  润新知