分类
Python1

图形窗口交互设计

学习目标
1、了解图形交互界面特点
2、学会安装easygui模块
3、学会使用easygui模块中两个的方法
4、学会在easygui中插入图片
5、下拉选择框choicebox()与自定义输入框enterbox()
6、integerbox()整数输入框与multpasswordbox()

常见的计算机图形窗口

1、认识easygui
GUI是Graphical User interface(图形用户界面)的缩写,使用GUI的程序,用户可以看到窗口,按钮,文本框等等图形,图形中有按钮,用户就可以用鼠标完成输入。
easygui是一个Python模块,利用这个模块里的方法可以很方便地建立一些简单的图形交互窗口。

2、安装easygui下载得到的easygui.zip文件解压缩得到easygui.py,复制到Python安装路径(打开IDLE菜单File-Open,可以看到安装路径)下的Lib文件夹中。测试是否安装成功:交互环境中输入命令:import easygui

3、建立第一个图形窗口
(1)输入如下代码,并测试:
import easygui
easygui.msgbox(“我一定要学好Python”)
(2)msgbox()方法的格式
msgbox(msg = “”,title = “”,ok_button = “”,image = “”)

import easygui as g 
result = g.msgbox(msg = "我一定要学好Python",title = "表明决心",ok_button = "一定")
print(result)     #result获取到程序中的输入“一定”

4、多按钮交互窗口
buttonbox()方法格式: buttonbox(msg=””, title=””, choices=(“按钮1”, “按钮2”, “按钮3”),image = “”)

import easygui as g
flavor = g.buttonbox("请选择你喜欢的口味",title = "冰淇淋点单系统",
            choices = ("牛奶","香草","草莓","抹茶"))
g.msgbox("您选择的是"+flavor+"味",title = "冰淇淋点单系统")

根据前面的知识点完成编程题:电影票系统。

5、buttonbox()方法中插入图片
1.准备一张gif格式的图片(保存路径随意),如图片(点这里下载图片,解压缩后使用)
2.复制图片保存的路径地址
3.设置buttonbox()方法中的image参数

import easygui as g
flavor =g.buttonbox(msg = "请选择你喜欢的口味",title = "冰淇淋点	单系统",choices = ("牛奶","香草","草莓","抹茶"),image = 	"E:\Python_file\lesson3\ice.gif")
g.msg(“你选择的是”+flavor+”味”,title = “冰淇淋点单系统”,
           image = “E:\Python_file\lesson3\ice.gif”)

6、choicebox()下拉选择框 buttonbox()提供给使用者一些简单的按钮选项,这很方便,但如果有很多选项或者选项的内容特别长的话,更好的策略是使用choicebox()。
choicebox()方法的格式
choicebox(msg=”, title=’ ‘, choices=(“选项1”,”选项2”,”选项3”,”…..”))

import easygui as g
number = g.choicebox(msg = "请选择你的幸运数字",title = "幸运数字"
            ,choices = ("0","1","2","3","4","5","6","7","8","9"))
g.msgbox("你选择的是"+number,title = "幸运数字")

7、enterbox()自定义输入
在前面的方法中,都是由程序事先做好选择项供使用者来选择,但某些时候使用者需要自己输入想要的信息该怎么办呢?easygui提供了一个自定义输入框就是enterbox()。
enterbox()方法的格式:
enterbox(msg=” ”, title=” ”, default=” ”, image=” ”)

import easygui as g
flavor = g.enterbox("请输入你喜欢的口味",title = "冰淇淋点单系统",default = "牛奶")
g.msgbox("你输入的是"+flavor+"味")

注意:easygui中所有方法的msg参数不能包含非字符变量

8、如何在easygui中获得数字?
integerbox()方法格式:
integerbox(msg=””, title=””, default = “”,lowerbound = 0,upperbound = 100,image = “”)

import easygui as g
score = g.integerbox(msg = "请输入你的分数",title = "成绩记录"
                     ,lowerbound = 0,upperbound = 100)
g.msgbox("你的分数是"+str(score))

9、设计用户登录窗口
multpasswordbox()方法格式:
multpasswordbox(msg=””, title=””, fields = (“选项1”, “选项2”, “选项3”))

import easygui as g
g.multpasswordbox(msg = "请输入用户名和密码",title = "用户登录",fields = ("用户名","密码"))

登录 http://easygui.sourceforge.net 了解更多easygui中的方法。