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模块探秘之EasyGui的更多相关文章
- Python模块探秘 Smtplib发送带有各种附件的邮件
这两天对Python的邮件模块比较感兴趣,于是就查了查资料.同时在实际的编码过程中也遇到了各种各样的问题.下面我就来分享一下我与smtplib的故事. 前提条件 我的上一篇博文里面讲解了,发送邮件必须 ...
- Python模块探秘之smtplib,实现纯文本邮件的发送
今天学到了如何使用Python的smtplib库发送邮件,中间也是遇到了各种各样的错误和困难,还好都一一的解决了.下面来谈一谈我的这段经历. 配置你的邮箱 为什么要配置邮箱呢?具体要配置什么呢? 因为 ...
- Python 模块EasyGui详细介绍
转载:无知小德 Python 模块EasyGui详细介绍 EasyGui 官网: http://easygui.sourceforge.net 官方的教学文档:http://easygui-docs- ...
- 一、Python 模块EasyGui详细介绍
Python 模块EasyGui详细介绍 EasyGui 官网: -http://easygui.sourceforge.net 官方的教学文档: -easygui-docs-0.96\tutoria ...
- Python模块 | EasyGui
(Python模块 | EasyGui | 2021/04/08) 目录 什么是 EasyGUI? [EasyGui中的函数] msbox | 使用示例 ynbox | 使用示例 ccbox | 使用 ...
- 使用C/C++写Python模块
最近看开源项目时学习了一下用C/C++写python模块,顺便把学习进行一下总结,废话少说直接开始: 环境:windows.python2.78.VS2010或MingW 1 创建VC工程 (1) 打 ...
- Python模块之configpraser
Python模块之configpraser 一. configpraser简介 用于处理特定格式的文件,其本质还是利用open来操作文件. 配置文件的格式: 使用"[]"内包含 ...
- Python模块之"prettytable"
Python模块之"prettytable" 摘要: Python通过prettytable模块可以将输出内容如表格方式整齐的输出.(对于用Python操作数据库会经常用到) 1. ...
- python 学习第五天,python模块
一,Python的模块导入 1,在写python的模块导入之前,先来讲一些Python中的概念性的问题 (1)模块:用来从逻辑上组织Python代码(变量,函数,类,逻辑:实现一个功能),本质是.py ...
随机推荐
- [JLOI2015]城池攻占
题目描述 小铭铭最近获得了一副新的桌游,游戏中需要用 m 个骑士攻占 n 个城池.这 n 个城池用 1 到 n 的整数表示.除 1 号城池外,城池 i 会受到另一座城池 fi 的管辖,其中 fi &l ...
- remove、erase
remove: remove不是真正的删除,删除后数量并没有变化. 它接收一对迭代器,而不是一个容器,所以不知道它作用于哪个容器. 而且没有办法从一个迭代器获取对应于它的容器 实现 remove会用需 ...
- C++Primer学习——函数
编译器能以任意顺序对形参进行求值 函数的返回类型不能是数组类型和函数类型. 函数开始时为形参分配内存,一旦函数结束,形参也就被销毁了. 如果弄成静态局部变量,那么回到程序终止结束时才被销毁. void ...
- [HNOI2015]实验比较
Description 小D 被邀请到实验室,做一个跟图片质量评价相关的主观实验.实验用到的图片集一共有 N 张图片,编号为 1 到 N.实验分若干轮进行,在每轮实验中,小 D会被要求观看某两张随机选 ...
- 【bzoj4445 scoi2015】小凸想跑步
题目描述 小凸晚上喜欢到操场跑步,今天他跑完两圈之后,他玩起了这样一个游戏. 操场是个凸 nn 边形, nn 个顶点按照逆时针从 00 ∼ n - 1n−1 编号.现在小凸随机站在操场中的某个位置,标 ...
- 【UVA–11997 K Smallest Sums 】
·哦,这题要用优先队列?那大米饼就扔一个手写堆上去吧! ·英文题,述大意: 输入n个长度为n的序列(题中是k,2<=k<=750).一种结果定义为:从每个序列中都要挑选一个数加 ...
- 习题7-1 uva 208(剪枝)
题意:按最小字典序输出a到b 的所有路径. 思路:先处理出个点到目标点b的情况(是否能到达),搜索即可. 最开始我只判了a能否到b,然后给我的是WA,然后看了半天感觉思路没什么问题,然后把所有点都处理 ...
- sklearn.model_selection 的 train_test_split作用
train_test_split函数用于将数据划分为训练数据和测试数据. train_test_split是交叉验证中常用的函数,功能是从样本中随机的按比例选取train_data和test_data ...
- 谷歌发布 TensorFlow Lite [官方网站,文档]
机器学习社区:http://tensorflow123.com/ 简介 TensorFlow Lite TensorFlow Lite 是 TensorFlow 针对移动和嵌入式设备的轻量级解决方案. ...
- 阿里技术一面,Java研发岗
之前过了个简单的简历面,过了几天后没打来以为凉了,然后昨晚又接到了电话,括号内容是回答说的,理解有限,不一定都对,欢迎纠正-加油每一个牛友们! 阿里一面: 1.学过哪些技术知识呢? 2.说说接口和抽象 ...