Python 模块EasyGui详细介绍


Posted in Python onFebruary 19, 2017

Python 模块EasyGui详细介绍

前言:

在Windows想用Python开发一些简单的界面,所以找到了很容易上手的EasyGui库。下面就分享一下简单的使用吧。

参考的链接:官网Tutorial

接下来,我将从简单,到复杂一点点的演示如何使用这个模块。希望能给刚接触easygui的你一点帮助 :-)

msgBox,ccbox,ynbox

# coding:utf-8

#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = 一个最简单的类似于Java的MessageBox的小窗口

import easygui
title = easygui.msgbox(msg='提示信息',title='标题部分',ok_button="OOK")

msg = easygui.msgbox('Hello Easy GUI')
print '返回值:' + msg

ccbox = easygui.ccbox("here is Continue | Cancel Box!")
print '返回值:' + str(ccbox)

ynbox = easygui.ynbox("Yes Or No Button Box!")
print '返回值: ' + str(ynbox)

bottonbox

# coding:utf-8

#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = 能让你最初选择的简单的界面,第二个参数为一个列表

import easygui

# choice = easygui.buttonbox("这里是提示的语句信息:\n", title='三选一', choices=['one' \
#   , 'two', 'three'])
# easygui.msgbox('您选择了:' + str(choice))
#
# # choices 内只能有两个参数 ,选择哪一个将返回1,否则返回0
# bool = easygui.boolbox('msg提示信息', title='标题部分', choices=['A', 'B'])
# easygui.msgbox(bool)

image = 'me.jpg'
msg = 'Here is my photo,a python fan also'
choices = ['Yes','No',"Not Sure"]
title = 'Am I handsome?'
easygui.buttonbox(msg,title,image=image,choices=choices)

choicebox

# coding:utf-8

#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = 从一个列表中选择其中的一个,会有返回值的出现

import easygui

msg = '选择此列表项中你喜欢的一个吧'
title = '必须选择一个哦'
choices = ['1','2','3','4','5','6','7']
answer = easygui.choicebox(msg,title,choices)
print '你选择了 :' + str(answer)

enterbox

# coding:utf-8

#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = 可以满足用户输入的控件

import easygui

st = easygui.enterbox("请输入一段文字:\n")
print "您输入了: " + str(st)

mutilchoicebox

# coding:utf-8

#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = 一个多选的列表项.呵呵了,这个版本貌似有问题。我的多选并没有真正的实现

import easygui

msg = '选择此列表项中你喜欢的一个吧'
title = '必须选择一个哦'
choices = (1,2,3,4,5,6,7,8,9)
answer1 = easygui.multchoicebox(msg,title,choices)
for item in answer1:
  print item

intenterbox,passenterbox

# coding:utf-8

#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = 提供给用户简单的输入框,只能是给定的数字的范围

import easygui

msg = '请输入一个数字,范围在0-100'
title = '限制为数字类型'
lowerbound = 0
upperbound = 100
default = ''
image = 'me.jpg'
result = easygui.integerbox(msg,title,default,lowerbound,upperbound,image)
print result

textbox,codebox

# coding:utf-8

#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = easygui 还提供了对大量文本的支持,以及对代码文本的支持

import easygui

msg = '大文本的支持'
title = 'Text Code'
text = 'abcdefghijklmnopqrstuvwxyzABCDEFGHJIKLMNOPQRSTUVWXYZ0123456789-/'
textContent = easygui.textbox(msg,title,text)
codeContent = easygui.codebox(msg,title,)
print textContent
print codeContent

# D:\Software\Python2\python.exe E:/Code/Python/MyTestSet/easygui_/text_codebox.py
# abcdefghijklmnopqrstuvwxyzABCDEFGHJIKLMNOPQRSTUVWXYZ0123456789-/
# public class HelloWorld{
#  public static void main(String []args) {
#    System.out.println("Hello World!");
#  }
# }
#
# Process finished with exit code 0

diropenbox

# coding:utf-8

#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = 该函数用于提供一个对话框,返回用户选择的目录名,该目录名是带有完整的路径的
# 选择Cancel的话返回值默认为None

import easygui

msg = '选择一个文件,将会返回该文件的完整的目录哦'
title = ' 文件选择对话框'
default = r'F:\flappy-bird'
full_file_path = easygui.diropenbox(msg, title, default)
print '选择的文件的完整的路径为:' + str(full_file_path)


# D:\Software\Python2\python.exe E:/Code/Python/MyTestSet/easygui_/diropenbox.py
# 选择的文件的完整的路径为:F:\flappy-bird
#
# Process finished with exit code 0

fileopenbox

# coding:utf-8

#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = 此方法用于提供一个对话框,返回用户选择的文件名,带有完整的路径,选择Cancel返回None
#       default="c:/fishc/*.py" 即显示 C:\fishc 文件夹下所有的 Python 文件。
#       default="c:/fishc/test*.py" 即显示 C:\fishc 文件夹下所有的名字以 test 开头的 Python 文件。
#       filetypes参数是包含文件掩码的字符串的列表,记住是个列表。如:filetypes = ["*.css", ["*.htm", "*.html", "HTML files"]]

import easygui

msg = '返回选择的文件的完整的路径,选择Cancel则返回None'
title = '文件选择器'
default = 'E:/Code/Python/MyTestSet/easygui/*.py'

opened_files = easygui.fileopenbox(msg,title,default,multiple=True)
for item in opened_files:
  print item



# D:\Software\Python2\python.exe E:/Code/Python/MyTestSet/easygui_/fileopenbox.py
# E:\Code\Python\MyTestSet\easygui_\me.jpg
# E:\Code\Python\MyTestSet\easygui_\buttonbox.py
# E:\Code\Python\MyTestSet\easygui_\choicesbox.py
# E:\Code\Python\MyTestSet\easygui_\diropenbox.py
# E:\Code\Python\MyTestSet\easygui_\enterbox.py
# E:\Code\Python\MyTestSet\easygui_\fileopenbox.py
# E:\Code\Python\MyTestSet\easygui_\integerbox.py
#
# Process finished with exit code 0

filesavebox

# coding:utf-8

#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = 该函数提供了一个对话框,让用户选择文件需要保存的路径(带完整的路径)选择Cancel返回None
#        default 参数应该包含一个文件名(例如当前需要保存的文件名),当然你也可以设置为空的,或者包含一个文件格式掩码的通配符。
#        filetypes参考如上面的fileopenbox

import easygui

msg = 'Save your file'
title = "to Save File"
default = 'E:/Code/Python/MyTestSet/easygui/newFile.*'
savedfile = easygui.filesavebox(msg,title,default)
print savedfile
print '当然了,这里仅仅是一个完整的路径加上文件名而已,并不会真的保存成一个文件,保存文件需要用到其他的库'



# D:\Software\Python2\python.exe E:/Code/Python/MyTestSet/easygui_/filesavebox.py
# E:\Code\Python\MyTestSet\easygui_\newFile.doc
# 当然了,这里仅仅是一个完整的路径加上文件名而已,并不会真的保存成一个文件,保存文件需要用到其他的库
#
# Process finished with exit code 0

exceptionbox

# coding:utf-8

#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = 这是一个很好用的对话框,当应用程序出现异常的时候,就可以通过这个来给与用户友好的界面提示

import easygui

try:
  int('Exception')
except:
  easygui.exceptionbox('int类型数据转换错误!请检查您的数据类型!')

# 会弹出一个界面,内容信息可以自己定义,如上面。下面的内容就是追踪到的出错信息
# Traceback (most recent call last):
#  File "E:/Code/Python/MyTestSet/easygui_/exceptionbox.py", line 10, in <module>
#   int('Exception')
# ValueError: invalid literal for int() with base 10: 'Exception'

总结

看完了这些示例,想必对easygui开发简单的桌面小程序很有信心了吧。(^__^) 嘻嘻……

但是咧,对于比较复杂的任务,只是掌握了这些基础的是远远不够的。所以我们还需要挖掘一下Python其他的相关的模块。这样在实际开发的时候,就可以根据任务的难易程度选择最合适的模块进行开发了。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Python 相关文章推荐
Python入门_浅谈数据结构的4种基本类型
May 16 Python
python的unittest测试类代码实例
Dec 07 Python
python实现桌面壁纸切换功能
Jan 21 Python
Python检查ping终端的方法
Jan 26 Python
Python2与Python3的区别实例总结
Apr 17 Python
详解python中的线程与线程池
May 10 Python
用python3 返回鼠标位置的实现方法(带界面)
Jul 05 Python
Python pandas自定义函数的使用方法示例
Nov 20 Python
浅析python 定时拆分备份 nginx 日志的方法
Apr 27 Python
Keras loss函数剖析
Jul 06 Python
python如何停止递归
Sep 09 Python
Django返回HTML文件的实现方法
Sep 17 Python
Python中字符串格式化str.format的详细介绍
Feb 17 #Python
Python爬虫:通过关键字爬取百度图片
Feb 17 #Python
Python 遍历列表里面序号和值的方法(三种)
Feb 17 #Python
浅谈python中的实例方法、类方法和静态方法
Feb 17 #Python
Python之日期与时间处理模块(date和datetime)
Feb 16 #Python
python字符串中的单双引
Feb 16 #Python
使用PyV8在Python爬虫中执行js代码
Feb 16 #Python
You might like
PHP入门之常量简介和系统常量
2014/05/12 PHP
php对象和数组相互转换的方法
2015/05/12 PHP
Symfony2获取web目录绝对路径、相对路径、网址的方法
2016/11/14 PHP
JQuery 操作Javascript对象和数组的工具函数小结
2010/01/22 Javascript
JS解析json数据并将json字符串转化为数组的实现方法
2012/12/25 Javascript
使用javascript实现ListBox左右全选,单选,多选,全请
2013/11/07 Javascript
Google官方支持的NodeJS访问API,提供后台登录授权
2014/07/29 NodeJs
每天一篇javascript学习小结(Boolean对象)
2015/11/12 Javascript
AngularJS解决ng界面长表达式(ui-set)的方法分析
2016/11/07 Javascript
详解js界面跳转与值传递
2016/11/22 Javascript
selenium 与 chrome 进行qq登录并发邮件操作实例详解
2017/04/06 Javascript
微信小程序实现轮播图效果
2017/09/07 Javascript
JavaScript实现职责链模式概述
2018/01/25 Javascript
对angular 监控数据模型变化的事件方法$watch详解
2018/10/09 Javascript
如何实现一个webpack模块解析器
2018/10/24 Javascript
vue iview实现动态新增和删除
2020/06/17 Javascript
Nuxt.js 静态资源和打包的操作
2020/11/06 Javascript
浅谈Python中的可变对象和不可变对象
2017/07/07 Python
基于Django contrib Comments 评论模块(详解)
2017/12/08 Python
Python callable()函数用法实例分析
2018/03/17 Python
python覆盖写入,追加写入的实例
2019/06/26 Python
python实现每天自动签到领积分的示例代码
2020/08/18 Python
python中time、datetime模块的使用
2020/12/14 Python
印尼极简主义和实惠的在线家具店:Fabelio
2019/03/27 全球购物
英国最大的户外商店:Go Outdoors
2019/04/17 全球购物
Arti-shopping中文官网:大型海外商品一站式直邮平台
2020/03/23 全球购物
逃课上网检讨书
2014/02/20 职场文书
2014新课程改革心得体会
2014/03/10 职场文书
如何写自我评价?自我评价写什么好?
2014/03/14 职场文书
商业计算机应用专业自荐书
2014/06/09 职场文书
社区五一劳动节活动总结
2015/02/09 职场文书
离职证明范本
2015/06/12 职场文书
2016猴年春节问候语
2015/11/11 职场文书
同学聚会开幕词
2019/04/02 职场文书
2019年销售部季度工作计划3篇
2019/10/09 职场文书
golang 接口嵌套实现复用的操作
2021/04/29 Golang