文档介绍:第十一章使用Python进行GUI开发GUI编程使用Python语言,可以通过多种GUI开发库进行GUI开发,包括内置在Python中的Tkinter,以及优秀的跨平台GUI开发库PyQt和wxPython等。窗口与组件在GUI开发过程中,首先要创建一个顶层窗口,该窗口是一个容器,可以存放程序所需的各种按钮、下拉框、单选框等组件。事件驱动与回调机制用户在使用GUI程序时,会进行各种操作,这些操作均称为事件。同时,每个组件也对应着一些特有的事件。可以说,整个GUI程序都是在事件驱动下完成各项功能的。GUI程序从启动时就会一直监听这些事件,当某个事件发生时程序会调用对应的事件处理函数并做出相应的响应,这种机制被称为回调,而事件对应的处理函数被称为回调函数。Tkinter的主要组件使用Tkinter库创建一个GUI程序只需要以下几个步骤。导入Tkinter模块。创建GUI应用程序的主窗口(顶层窗口)。添加完成程序功能所需要的组件。编写回调函数。进入主事件循环,对用户触发的事件做出响应。Tkinter的主要组件标签(Label)是用来显示图片和文本的组件,它可以用来给一些组件添加所要显示的文本。框架(Frame)是其他组件的一个容器,通常是用来包含一组控件的主体。用户可以定制框架的外观。按钮(Button)是接收用户鼠标点击事件的组件。mand属性为每个按钮绑定一个回调程序,用于处理按钮点击时的事件响应。同时,用户也可以通过其state属性禁用一个按钮的点击行为。输入框(Entry)是用来接收用户文本输入的组件。与按钮相同,用户可以通过使用将state属性设置为DISABLED的方式禁用输入框,以禁止用户输入或修改输入框中的内容。Tkinter的主要组件单选按钮(Radiobutton)和复选按钮(Checkbutton)是提供给用户进行选择输入的两种组件。前者是排他性选择,即用户只能选取一组选项中的一个选项;而后者可以支持用户选择多个选项。它们的创建方式也略有不同:当创建一组单选按钮时,必须将这一组单选按钮与一个相同的变量关联起来,以设定或获得单选按钮组当前的选中状态;当创建一个复选按钮时,需要将每一个选项与一个不同的变量关联起来,以表示每个选项的选中状态。同样,这两种按钮也可以通过其state属性被设置为禁用。列表框(Listbox)会用列表的形式展示多个选项以供用户选择。同时,在某些情况下这个列表会比较长,所以可以为列表框添加一个滚