python图形化模块easygui中⽂⽂档说明
在EasyGUI中,所有的GUI交互都由简单函数调⽤
这是⼀个使⽤EasyGUI的简单演⽰程序。
from easygui import*
import sys
# A nice welcome message
ret_val = msgbox("Hello, World!")
if ret_val is None:# User closed msgbox
msg ="What is your favorite flavor?\nOr Press <cancel> to exit."
title ="Ice Cream Survey"
choices =["Vanilla","Chocolate","Strawberry","Rocky Road"]
while1:
choice = choicebox(msg, title, choices)
if choice is None:
msgbox("You chose: {}".format(choice),"Survey Result")
EasyGUI演⽰程序
要运⾏EasyGUI的演⽰程序,从命令⾏调⽤EasyGUI:
python easygui.py
或者从IDE(如 IDLE, PythonWin, Wing等)这样:
from easygui import*
egdemo()
这样就可以使⽤EasyGUI的各个函数,并将你的选择输出到控制台中。
导⼊EasyGUIpython新手代码userid
为了使⽤EasyGUI,必须在使⽤前导⼊本模块。最简单的导⼊语句是:
import easygui
如果使⽤该表单,则需要访问EasyGUI的函数,必须使⽤"EasyGUI"前缀,⽰例:
easygui.msgbox(...)
第⼆种是以这种⽅式导⼊EasyGUI:
from easygui import*
这使得调⽤EasyGUI函数更容易;您不必⽤"EasyGUI"来对函数名进⾏前缀,此时你就可以这样写:msgbox(...)
第三种是使⽤如下导⼊语句:
import easygui as g
这样你就可以使⽤较少的单词(g)替代原单词(easygui),此时你可以这样写:
g.msgbox(...)
若你习惯使⽤Python和EasyGUI,则第三种替代⽅法实际上是最好的⽅法。
使⽤EasyGUI
当您已经导⼊EasyGUI模块后,GUI操作就可以简单的⽤EasyGUI函数添加⼏个参数实现了。例如,使⽤EasyGUI写⼀个简单
的"Hello,World!"程序:
from easygui import*
msgbox("Hello, world!")
若要查看调⽤EasyGUI运⾏结果,在命令提⽰符窗⼝输⼊:
python easygui.py
若要查看调⽤EasyGUI函数的代码⽰例,请查看EasyGUI.py末尾的演⽰代码。
EasyGUI函数的缺省参数
对于所有的图形化组件函数,前两个参数是消息(msg)和标题(title),按顺序排列。在某些情况下,对⽤户来说这可能不是最为友好的安排(例如,获取⽬录和⽂件名的对话框忽略消息(msg)参数),但我认为更重要的是保持所有组件之间的⼀致性。
⼤多数EasyGUI函数的参数都有缺省值。⼏乎所有的图形化组件函数都显⽰⼀个消息和⼀个标题。标题默认为空字符串,并且消息通常具有简单的默认值。
这样可以根据需要,指定尽可能少的参数,以获得所需的结果。例如,msgbox函数的标题参数是可选的,所以你可以只指定消息调⽤msgbox函数,这样:
msgbox("Danger, Will Robinson!")
或者指定消息和标题,这样:
msgbox("Danger, Will Robinson!","Warning!")
在各种类型的buttonbox上,默认的消息是"Shall I continue?",所以,你可以⽆需任何参数去调⽤buttonbox函数。这⾥,我们可以⽆需任何参数调⽤ccbox函数(close/cancel box,它返回布尔值):
if ccbox():
pass# ⽤户选择后继续
else:
return#⽤户选择后退出
在调⽤EasyGUI函数时使⽤关键字参数
在调⽤EasyGUI函数时可能会使⽤到关键字参数。
假设你想使⽤⼀个ButoBox,但是(不管什么原因)不想指定标题(第⼆)位置的参数。您仍然可以使⽤关键字指定选择参数(第三个参数),这样:
choices =["是","否","只在周五"]
reply = choicebox("你喜欢吃鱼吗?", choices=choices)
使⽤按钮控件(buttonboxes)
为满⾜公共需求在⽂件顶部建⽴buttonbox()的函数。
提⽰框
msgbox显⽰⼀条消息并提供⼀个OK按钮。你可以发送任何你想要的消息,以及你想要的任何标题。如果你愿意,你也可以在按钮上重
写“OK”的默认⽂本。下⾯是msgbox函数的⽰例:
def msgbox(msg="(Your message goes here)", title="", ok_button="OK"):
....
重写按钮⽂本最简单的⽅法是⽤关键字参数,⽰例:
msgbox("Backup complete!", ok_button="Good job!")
下⾯是⼏个⽰例:
msgbox("Hello, world!")
msg ="Do you want to continue?"
title ="Please Confirm"
if ccbox(msg, title):# show a Continue/Cancel dialog
pass# user chose Continue
else:# user chose Cancel
ccbox
ccbox提供"继续"和"取消"选项,并返回 True(⽤于继续)或返回 False(⽤于取消)。
ynbox
ynbox提供了"是"和"否"的选择,并返回false的true。
buttonbox
若要在buttonbox中指定⾃⼰的按钮集,请使⽤buttonbox()函数。
buttonbox可以⽤来显⽰你选择的⼀组按钮。当⽤户单击按钮时,buttonbox()返回选择的⽂本。如果⽤户取消或关闭buttonbox,则返回默认选择(第⼀选择)。
按钮框显⽰⼀个消息、⼀个标题和⼀组按钮。返回值为⽤户选择的按钮的⽂本。
indexbox
indexbox显⽰⼀个消息、⼀个标题和⼀组按钮。返回⽤户选择的索引。例如,如果使⽤三个选项(A,B,C)调⽤索引框,如果⽤户选择A,则索引框将返回0,如果他选择B,则返回1,如果选择C,则为2。
boolbox
boolbox(boolean box)显⽰⼀个消息、⼀个标题和⼀组按钮。如果选择第⼀个按钮,返回1。否则返回0。
下⾯是boolbox()的⼀个简单例⼦:
message ="What does she say?"
title =""
if boolbox(message, title,["She loves me","She loves me not"]):
sendher("Flowers")# This is just a sample function that you might write.
else:
pass
如何在buttonbox中显⽰图像
当调⽤Button框函数时(或显⽰按钮的其他函数,如msgbox、indexbox、ynbox等等),您可以指定关键字参数image=xxx,其中xxx是图像的⽂件名,⽂件可以是.gif。
你也可以使⽤其他图像格式,如.png。
如果指定了图像参数,则图像⽂件将在消息之后显⽰。
以下是EasyGUI⽰例代码:
image ="python_and_check_logo.gif"
msg ="Do you like this picture?"
choices =["Yes","No","No opinion"]
reply = buttonbox(msg, image=image, choices=choices)
如果点击底部的⼀个按钮,它的值将在“reply”中返回。你也可以点击图像,返回图像⽂件名。
让⽤户从选择列表中选择
choicebox
Buttonboxes很好地为⽤户提供了短选择的⼩选择。但是如果有很多选择,或者选择的⽂本很长,那么⼀个更好的策略就是把它们呈现为⼀个列表。
choicebox提供了⼀种⽤户从选择列表中选择的⽅法。选择是按序列(元组或列表)指定的。在呈现之前,将给出不区分⼤⼩写的选项。
键盘可以⽤来选择列表中的元素。
例如,在键盘上按下"g",将跳转到"g"开头单词的第⼀个元素,再次按下"g",光标会跳转到下⼀个元
素。在从"g"开始的元素的末尾,再次按下"g"将使选择包括所有"g"开头的元素,并跳到"g"开头第⼀个元素。
如果没有从"g"开始的元素,则选择发⽣在"g"位置之前的最后⼀个元素。如果在"g"之前没有元素,则选择列表中的第⼀个元素:
msg ="What is your favorite flavor?"
title ="Ice Cream Survey"
choices =["Vanilla","Chocolate","Strawberry","Rocky Road"]
choice = choicebox(msg, title, choices)
choicebox的另⼀个例⼦:
multchoicebox
multchoicebox()函数为⽤户从选择列表中选择了⼀种⽅式。界⾯看起来像choicebox,但是⽤户可以有0个、1个或多个选择。选项是按序列(元组或列表)指定的。在输出之前,选项将按不区分⼤⼩写的顺序排列。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。