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中if __name__ == &quot;__main__&quot;详细解释
Oct 21 Python
Python性能优化技巧
Mar 09 Python
使用Python下的XSLT API进行web开发的简单教程
Apr 15 Python
Python中用于计算对数的log()方法
May 15 Python
浅谈用Python实现一个大数据搜索引擎
Nov 28 Python
Python生成8位随机字符串的方法分析
Dec 05 Python
python调用摄像头显示图像的实例
Aug 03 Python
python多任务及返回值的处理方法
Jan 22 Python
Python3按一定数据位数格式处理bin文件的方法
Jan 24 Python
Python实现病毒仿真器的方法示例(附demo)
Feb 19 Python
python 成功引入包但无法正常调用的解决
Mar 09 Python
利用PyQt5+Matplotlib 绘制静态/动态图的实现代码
Jul 13 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
支持数组的ADDSLASHES的php函数
2010/02/16 PHP
php读取mysql中文数据出现乱码的解决方法
2013/08/16 PHP
PHP变量内存分配问题记录整理
2013/11/27 PHP
PHP实现的迷你漂流瓶
2015/07/29 PHP
浅谈ThinkPHP5.0版本和ThinkPHP3.2版本的区别
2017/06/17 PHP
php ZipArchive实现多文件打包下载实例
2019/10/31 PHP
ThinkPHP5与单元测试PHPUnit使用详解
2020/02/23 PHP
Nodejs极简入门教程(二):定时器
2014/10/25 NodeJs
js计算德州扑克牌面值的方法
2015/03/04 Javascript
Javascript中的arguments与重载介绍
2015/03/15 Javascript
HTML5 Shiv完美解决IE(IE6/IE7/IE8)不兼容HTML5标签的方法
2015/11/25 Javascript
javascirpt实现2个iframe之间传值的方法
2016/06/30 Javascript
JavaScript实现输入框与清空按钮联动效果
2016/09/09 Javascript
浅谈jQuery效果函数
2016/09/16 Javascript
pm2 部署 node的三种方法示例
2017/10/20 Javascript
基于vue-ssr服务端渲染入门详解
2018/01/08 Javascript
node 解析图片二维码的内容代码实例
2019/09/11 Javascript
node crawler如何添加promise支持
2020/02/01 Javascript
js轮播图之旋转木马效果
2020/10/13 Javascript
JavaScript十大取整方法实例教程
2020/12/03 Javascript
用python实现简单EXCEL数据统计的实例
2017/01/24 Python
python如何求解两数的最大公约数
2018/09/27 Python
python 协程中的迭代器,生成器原理及应用实例详解
2019/10/28 Python
django 中使用DateTime常用的时间查询方式
2019/12/03 Python
浅谈python3 构造函数和析构函数
2020/03/12 Python
scrapy框架携带cookie访问淘宝购物车功能的实现代码
2020/07/07 Python
pycharm如何设置官方中文(如何汉化)
2020/12/29 Python
使用layui实现左侧菜单栏及动态操作tab项的方法
2020/11/10 HTML / CSS
Interrail法国:乘火车探索欧洲,最受欢迎的欧洲铁路通票
2019/08/27 全球购物
直接有效的自我评价
2014/01/11 职场文书
优秀交警事迹材料
2014/01/26 职场文书
党员2014两会学习心得体会
2014/03/17 职场文书
大学生作弊检讨书
2014/09/11 职场文书
市直属机关2016年主题党日活动总结
2016/04/05 职场文书
golang goroutine顺序输出方式
2021/04/29 Golang
MySql重置root密码 --skip-grant-tables
2022/04/11 MySQL