一、安装、了解easygui

下载地址:http://bbs.fishc.com/forum.php?mod=viewthread&tid=46069&extra=page%3D1%26filter%3Dtypeid%26typeid%3D403

安装:下载后解压缩,cmd下进入压缩后的文件夹,并输入 python setup.py install

说明文档:也在下载地址里面

二、调用此包

import easygui as g

三、做一个合格的程序猿

写个简单的程序:

1、  msgbox(普通的窗口)

import easygui as g

g.msgbox("Hellow World")      #这是出来一个窗口,easybox中的函数基本每个都会产生一个窗口

g.msgbox("我一定要学会编程!", ok_button="加油!",title="")  #把ok按钮的字改为加油,还可以设置标题

2、  ccbox(确认窗口,比如确定是否删除)

下面产生一个确认的窗口

if ccbox():           #在各类按钮组件里,默认的消息是“shall i continue”,所以可以不加参数调用他们

pass # user chose to continue  
else:
return # user chose to cancel  #当选择cancel或关闭窗口时,会返回一个布尔类型的值

再举个栗子

if ccbox('要再来一次吗?', choices=('要啊要啊^_^', '算了吧T_T')):
  msgbox('不给玩了,再玩就玩坏了......')
else:
  sys.exit(0)                 # 记得先 import sys 哈

############################################

ynbox(msg='Shall I continue?', title=' ', choices=('Yes', 'No'), image=None)    #这也是一种选择窗口

############################################

3、  chiocebox(多选项窗口)

说出你的梦想。。。。。请选择!

choices = ['愿意', '不愿意', '有钱的时候愿意']        #会有三个选项你可以选择
 reply = choicebox('你愿意购买Q币支持腾讯吗?', choices = choices)

4、  buttonbox(简单一点的多选项)

举个栗子

buttonbox(msg='', title='你喜欢那个品牌 ', choices=('gangben', 'duleisi', 'piaorou'), image=None,root=None)

选项里面你可以自己调整写什么,当用户点击任意一个按钮的时候,buttonbox()返回按钮的文本内容,如果用户关闭窗口,那么会返回默认选项,也就是第一个选项

栗子:

buttonbox('大家说我长得帅吗?', image='565be4cdea107.gif', choices=('帅', '不帅', '!#@$'))

添加了图片,美观一些。但仅支持gif格式

5、  indexbox(基本跟上面一样)

先举栗子

indexbox(msg='Shall I continue?', title=' ', choices=('Yes', 'No'), image=None )

跟上面的区别就是:选择第一个按钮的时候返回序号0,选择第二个的时候返回序号1

6、  boolbox(难道就没有一点新鲜的吗?怎么都差不多!)

boolbox(msg='Shall I continue?', title=' ', choices=('Yes', 'No'), image=None)

如果第一个按钮被选中则返回 1,否则返回 0。

7、multchiocebox()

跟choice函数差不多,提供一个可选择的列表。但这个multchiocebox()与之不同的是,multchiocebox()支持用户选择0个,1个或者同时选择多个选项。

multchiocebox()函数也是使用序列(元祖或者列表)作为选项,这些选项显示前会按照不区分大小写的方式排好序。

multchoicebox(msg='Pick as many items as you like.', title=' ', choices=('123','456'))

8、  passwordbox(让用户输入密码)

passwordbox(msg='Enter Your Passwaord',title=' ',image=None,root=None)

会出来一个窗口,输入啥都显示为:******

9、  multpasswordbox(可以输入用户名 密码)

g.multpasswordbox(msg,title,("用户名","密码"))    #事先命名好msg、title

还可以这样用

msg = "请输入用户名和密码"
title = "用户登录接口"
user_info = []
user_info = g.multpasswordbox(msg,title,("用户名","密码"))
print(user_info)

10、  textbox(显示文本)

textbox(msg='Pick as many items as you like', title=' ', text='sadsad', codebox=0)

空白处显示:msg      文本框显示:text

11、  codebox(也是显示文本)

codebox(msg='', title=' ', text='')

12、  diropenbox(可以选择路径)

diropenbox(msg='123', title=None, default=None)

此函数用于提供一个对话框,返回用户选择的目录名(带完整路径哦),如果用户选择"Cancel"则返回 None。

13、  fileopenbox(也是用于打开文件)

fileopenbox(msg=None, title=None, default='*', filetypes=None)

关于 default 参数的设置方法:

             default 参数指定一个默认路径,通常包含一个或多个通配符。

            如果设置了 default 参数,fileopenbox() 显示默认的文件路径和格式。

            default 默认的参数是'*',即匹配所有格式的文件。

例如:

  1、default="c:/fishc/*.py" 即显示 C:\fishc 文件夹下所有的 Python 文件。

    2、default="c:/fishc/test*.py" 即显示 C:\fishc 文件夹下所有的名字以 test 开头的python文件

关于 filetypes 参数的设置方法:

  1、可以是包含文件掩码的字符串列表,例如:filetypes = ["*.txt"]

    2、可以是字符串列表,列表的最后一项字符串是文件类型的描述,例如:filetypes = ["*.css", ["*.htm", "*.html", "HTML files"]]

14、  filesavebox()

提供一个对话框,让用户选择文件需要保存的路径(带完整路径哦),如果用户选择"Cancel"则返回 None。

filesavebox(msg=None, title=None, default='', filetypes=None)

    default 参数应该包含一个文件名(例如当前需要保存的文件名),当然你也可以设置为空的,或者包含一个文件格式掩码的通配符。

    filetypes 参数的设置方法请参考上边。

15、  EgStore()

    GUI 编程中一个常见的场景就是要求用户设置一下参数,然后保存下来,以便下次用户使用你的程序的时候可以记住他的设置。

    为了实现对用户的设置进行存储和恢复这一过程,EasyGui 提供了一个叫做 EgStore 的类。为了记住某些设置,你的应用程序必须定义一个类(暂时称之为"设置"类,尽管你随意地使用你想要的名称设置它)继承自 EgStore 类。

    然后你的应用程序必须创建一个该类的对象(暂时称之为"设置"对象)。

    设置类的构造函数(__init__ 方法)必须初始化所有的你想要它所记住的那些值。

    一旦你这样做了,你就可以在"设置"对象中通过设定值去实例化变量,从而很简单地记住设置。之后使用 settings.store() 方法在硬盘上持久化设置对象。

下面是创建一个"设置"类的例子:

  1. #----------------------------------------------------------------------
  2. # create "settings", a persistent Settings object
  3. # Note that the "filename" argument is required.
  4. # The directory for the persistent file must already exist.
  5. #-----------------------------------------------------------------------
  6. settingsFilename = os.path.join("C:", "FishCApp", "settings.txt")  # Windows example
  7. settings = Settings(settingsFilename)

下面是使用"设置"对象的例子:

  1. # we initialize the "user" and "server" variables
  2. # In a real application, we'd probably have the user enter them via enterbox
  3. user    = "奥巴马"
  4. server  = "白宫"
  5. # we save the variables as attributes of the "settings" object
  6. settings.userId = user
  7. settings.targetServer = server
  8. settings.store()    # persist the settings
  9. # run code that gets a new value for userId
  10. # then persist the settings with the new value
  11. user    = "小甲鱼"
  12. settings.userId = user
  13. settings.store()

16、  exceptionbox()

使用 EasyGui 编写 GUI 程序,有时候难免会产生异常。当然这取决于你如何运行你的应用程序,当你的应用程序崩溃的时候,堆栈追踪可能会被抛出,或者被写入到 stdout 标准输出函数中。

EasyGui 通过 exceptionbox() 函数提供了更好的方式去处理异常,异常出现的时候,exceptionbox() 会显示堆栈追踪在一个 codebox() 中并且允许你做进一步的处理。

exceptionbox() 很容易使用,下面是一个例子:

try:
  print('I Love FishC.com!')
  int('FISHC') # 这里会产生异常
except:
  exceptionbox()

Python入门--8--现在需要先学习可视化--包:easygui的更多相关文章

  1. python入门到精通[三]:基础学习(2)

    摘要:Python基础学习:列表.元组.字典.函数.序列化.正则.模块. 上一节学习了字符串.流程控制.文件及目录操作,这节介绍下列表.元组.字典.函数.序列化.正则.模块. 1.列表 python中 ...

  2. python入门到精通[二]:基础学习(1)

    摘要:Python基础学习: 注释.字符串操作.用户交互.流程控制.导入模块.文件操作.目录操作. 上一节讲了分别在windows下和linux下的环境配置,这节以linux为例学习基本语法.代码部分 ...

  3. Python入门--7--处理数据时学习到的东西

    一.数据导入(这里使用的是pands包) import pands as pd wenjian = pd.read_csv('路径') 二.数据变换 print wenjian.head()    # ...

  4. python入门(十):模块、包

    模块:py文件包:目录,目录里面包含__init__.py,内容可以是空里面可以包含多个模块文件,还可以包含子包 1.模块和包,可以很方便的提供给其他程序以复用 1) 利于组织复杂工程 我们写代码的时 ...

  5. Python入门之PyCharm中目录directory与包package的区别

    对于Python而言,有一点是要认识明确的,python作为一个相对而言轻量级的,易用的脚本语言(当然其功能并不仅限于此,在此只是讨论该特点),随着程序的增长,可能想要把它分成几个文件,以便逻辑更加清 ...

  6. PYTHON 学习笔记1 PYTHON 入门 搭建环境与基本类型

    简介 Python,当然大家听到这个名词不再是有关于像JAVA 一样的关于后台,我们学习Python 的目的在于对于以后数据分析和机器学习AI 奠定基础,Python 在数据分析这一块,可谓是有较好的 ...

  7. 小白必看,Python入门你要懂那些

    Python作为为数不多的全场景开发语言之一,近年来已经获得了越来越多人的关注,而整个IT行业也释放出了大量的Python就业岗位.因此,当前学习Python语言是非常不错的选择,文泽带你进一步走进P ...

  8. Python语言学习之Python入门到进阶

    人们常说Python语言简单,编写简单程序时好像也确实如此.但实际上Python绝不简单,它也是一种很复杂的语言,其功能特征非常丰富,能支持多种编程风格,在几乎所有方面都能深度定制.要想用好Pytho ...

  9. Python入门学习指南

    对于初学者,入门至关重要,这关系到初学者是从入门到精通还是从入门到放弃.以下是结合Python的学习经验,整理出的一条学习路径,主要有四个阶段 NO.1 新手入门阶段,学习基础知识 总体来讲,找一本靠 ...

随机推荐

  1. WPF中退出时显示是否保存数据提示

    一.通过窗体中的按钮实现退出时数据保存提示 Xaml: <Grid> <TextBlock HorizontalAlignment="Left" Margin=& ...

  2. Latex 分块矩阵的处理

    在 \(\mathrm{\LaTeX}\) 中,如果想输入类似的矩阵: 可以这样实现: \[ \left[ \begin{array}{cc|cc|c} \lambda & 0 & 1 ...

  3. bootstrap table 保留翻页选中数据

    $(function () { $('#exampleTable').on('uncheck.bs.table check.bs.table check-all.bs.table uncheck-al ...

  4. 【状态压缩 meet in middle】poj3139Balancing the Scale

    数组溢出真是可怕的事情 Description You are given a strange scale (see the figure below), and you are wondering ...

  5. RuntimeError: Failed to init API, possibly an invalid tessdata path: E:\python36\报错

    OCR:光学识别符,tesserocr是python中一个OCR识别库,是对tesseract做的一个python的 API封装,所以它的核心是tesseract 在这里我安装的版本是:tessera ...

  6. Linux进程通信之共享内存实现生产者/消费者模式

    共享内存 共享内存是内核为进程创建的一个特殊内存段,它将出现在进程自己的地址空间中,其它进程可以将同一段共享内存连接(attach)到自己的地址空间.这是最快的进程间通信方式,但是不提供任何同步功能( ...

  7. MySQL-简要说明

    分类 安装发展顺序分为: 网状型数据库 层次型数据库 关系型数据库 面向对象数据库 主流:关系型数据库 关系型数据库 事务transaction: 多个操作被当作一个整体对待 • ACID:     ...

  8. 重置windows用户漫游配置文件

    1.备份用户数据 2.删除或修改漫游配置文件 3.用户PC管理员登陆,删除本地用户缓存文件 注册表打开: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows N ...

  9. HDU 6447

    YJJ's Salesman Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)To ...

  10. 【SaltStack】通过Master给Minion安装MySQL

    一.IP信息说明 [Master] IP: 192.168.236.100 [Minion] IP: 192.168.236.101 二.配置SaltStack 关于SaltStack Master和 ...