# Python学习记录7—–EasyGui中一些好玩的地方3
@TOC
一、让用户输入密码
有时候可能需要让用户输入密码等敏感信息,那么界面看上去应该是这样的:***。
1 passwordbox()
1 | passwordbox(msg=‘Enter your password.’, title=’ ‘, default=’’, image=None, root=None) |
passwordbox() 跟 enterbox() 样式一样,不同的是用户输入的内容用星号(*)显示出来,该函数返回用户输入的字符串:
1 | import easygui as ac |
程序实现如下:
2 multpasswordbox()
1 | multpasswordbox(msg=‘Fill in values for the fields.’, title=’ ', fields=(), values=(), callback=None, run=True) |
multpasswordbox() 跟 multenterbox() 使用相同的接口,但当它显示的时候,最后一个输入框显示为密码的形式(*):
1 | import easygui as ac |
程序实现如下:
二、显示文本
EasyGUI 还提供函数用于显示文本。
1 textbox()
1 | textbox(msg=’’, title=’ ‘, text=’’, codebox=False, callback=None, run=True) |
textbox() 函数默认会以比例字体(参数 codebox=True 设置为等宽字体)来显示文本内容(自动换行),这个函数适合用于显示一般的书面文字。
注:text 参数设置可编辑文本区域的内容,可以是字符串、列表或者元祖类型。
2 codebox()
1 | codebox(msg=’’, title=’ ‘, text=’’) |
codebox() 以等宽字体显示文本内容(不自动换行),相当于 textbox(codebox=True)
三、目录与文件
GUI 编程中一个常见的场景是要求用户输入目录及文件名,EasyGUI 提供了一些基本函数让用户来浏览文件系统,选择一个目录或文件。
.1 diropenbox()
1 | diropenbox(msg=None, title=None, default=None) |
diropenbox() 函数用于提供一个对话框,返回用户选择的目录名(带完整路径哦),如果用户选择 “Cancel” 则返回 None。
default 参数用于设置默认的打开目录(请确保设置的目录已存在)。
2 fileopenbox()
1 | fileopenbox(msg=None, title=None, default=’*’, filetypes=None, multiple=False) |
fileopenbox() 函数用于提供一个对话框,返回用户选择的文件名(带完整路径哦),如果用户选择 “Cancel” 则返回 None。
关于 default 参数的设置方法:
*default 参数指定一个默认路径,通常包含一个或多个通配符。
如果设置了 default 参数,fileopenbox() 显示默认的文件路径和格式。
default 默认的参数是 ‘’,即匹配所有格式的文件。**
例如:
default=“c:/fishc/.py” 即显示 C:\fishc 文件夹下所有的 Python 文件。
default=”c:/fishc/test.py” 即显示 C:\fishc 文件夹下所有的名字以 test 开头的 Python 文件。
关于 filetypes 参数的设置方法:
可以是包含文件掩码的字符串列表,例如:filetypes = [“.txt”]
可以是字符串列表,列表的最后一项字符串是文件类型的描述,例如:filetypes = [“.css”, [“.htm”, “.html”, “HTML files”]]
最后是 multiple 参数,如果为 True 则表示可以同时选择多个文件。
3 filesavebox()
1 | filesavebox(msg=None, title=None, default=’’, filetypes=None) |
filesavebox() 函数提供一个对话框,让用于选择文件需要保存的路径(带完整路径哦),如果用户选择 “Cancel” 则返回 None。
default 参数应该包含一个文件名(例如当前需要保存的文件名),当然也可以设置为空的,或者包含一个文件格式掩码的通配符。
filetypes 参数的设置方法请参考 fileopenbox() 函数。
总结
对于EasyGui的学习就到此为止吧 接下来要学习 类和对象 以及模块等的学习