目录
1. easygui.boolbox
函数结构如下:
boolbox(msg="Shall I continue?", title=" ", choices=("[T]rue", "[F]alse"), image=None, default_choice='[T]rue', cancel_choice='[F]alse'
选择框,提供一对按钮并相应返回 True 或 False,默认选择框如下:
import easygui
easygui.boolbox()
choices 即选项信息,默认显示为 Ture / False,可以输入其他带两个字符串元素的元组或列表替换;
#弹框如下图
#点击图片返回错误
easygui.boolbox('测试消息','测试标题',['[a]b','1[2]'],'.\\测试文件\\photo1.png')
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "D:\Anaconda\lib\easygui\boxes\derived_boxes.py", line 147, in boolbox
assert False, "The user selected an unexpected response."
AssertionError: The user selected an unexpected response.
#选择第一项返回True
easygui.boolbox('测试消息','测试标题',['[a]b','1[2]'],'.\\测试文件\\photo1.png')
True
#选择第二项返回False
easygui.boolbox('测试消息','测试标题',['[a]b','1[2]'],'.\\测试文件\\photo1.png')
False
choices 输入元组或列表,必须且只能包含两个字符串元素,大于或小于两个元素报错,输入非字符串类型元素,程序卡死;
choices 可以通过 '[]' 包裹快捷键,选项显示中快捷字符带下划线,默认按钮 Ture / False 快捷键即 'T'、'F',直接键盘上按相应键位,即可实现快捷选择;注意快捷键精确等价 '[]' 内快捷键值,区分大小写;包裹超过1个字符的快捷键,可以显示,实际不生效;快捷键建议使用字母、数字,使用特殊字符可能出现Event not understood ;
选择第一个选项返回 True,第二个选项返回 False,与选项显示信息无关,点击图片则报错;
#choices 输入三元素列表报错
easygui.boolbox(choices=['[a]b','1[2]3','%&'])
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "D:\Anaconda\lib\easygui\boxes\derived_boxes.py", line 129, in boolbox
raise AssertionError(
AssertionError: boolbox() takes exactly 2 choices! Consider using indexbox() instead.
#choices 输入单元素列表报错
easygui.boolbox(choices=['[a]b'])
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "D:\Anaconda\lib\easygui\boxes\derived_boxes.py", line 129, in boolbox
raise AssertionError(
AssertionError: boolbox() takes exactly 2 choices! Consider using indexbox() instead.
#choices 设置快捷键为特殊字符,显示Event not understood
easygui.boolbox(choices=['[a]b','1[#]2'])
Event not understood
defalut_choice 设置为 choices 其中一个元素时,则该按钮显示虚线环绕,提示为默认按键;
都不匹配时,则该参数没有效果,也不报错;
需注意,该配置必须与 choices 中某个元素完全一致,包括快捷键设置等,否则无效。
#高亮第一项
easygui.boolbox('测试消息','测试标题',['[a]b','1[2]'],'.\\测试文件\\photo1.png','[a]b','123')
True
easygui.boolbox('测试消息','测试标题',['[a]b','1[2]'],'.\\测试文件\\photo1.png','1[2]','123')
False