Python 简易图形界面库easygui 对话框大全(续)

这篇具有很好参考价值的文章主要介绍了Python 简易图形界面库easygui 对话框大全(续)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Python 简易图形界面库easygui 对话框大全(续),Python,python

目录

EasyGUI库

主要特点

使用场景

对话框样式

10. 文件打开框 fileopenbox

11. 文件保存框 filesavebox

12. 目录打开框 diropenbox

13. 索引对话框 indexbox

14. 例外报告框 exceptionbox

15. 代码文本框 codebox

16. 密码输入框 passwordbox

17. 多重文本框 multenterbox

18. 组合密码框 multpasswordbox

19. 多项选择框 multchoicebox

总结


EasyGUI库

随着Python在数据科学、机器学习和Web开发等多个领域的广泛应用,图形用户界面(GUI)开发也变得越来越重要。对于初学者和快速原型设计来说,使用复杂的GUI库可能会让人感到望而生畏。幸运的是,Python的EasyGUI库提供了一个简单而直观的方式来创建基本的图形用户界面,无需深入了解复杂的GUI编程概念。

EasyGUI是一个用于非常简单的Python GUI编程的库。与Tkinter等更高级的库相比,EasyGUI通过提供一系列预构建的对话框和简单的函数调用来简化GUI开发过程。这使得开发者可以专注于应用程序的逻辑,而不是花费大量时间在界面设计上。

主要特点

  1. 简单易用:EasyGUI提供了直观的API,通常只需要一行代码就可以调用各种对话框,如消息框、选择框、文件选择框等。
  2. 跨平台兼容性:EasyGUI可以在Windows、macOS和Linux等多个操作系统上运行,确保您的应用程序具有广泛的可达性。
  3. 自定义选项:尽管EasyGUI强调的是简单性,但它仍然提供了一定程度的自定义能力,如更改对话框的标题、添加自定义按钮等。
  4. 集成Python标准库:EasyGUI基于Python的标准Tkinter库构建,这意味着您可以在需要时轻松集成更复杂的Tkinter功能。

使用场景

  • 快速原型设计:当您需要快速测试一个想法或展示一个概念验证时,EasyGUI可以帮助您快速构建一个简单的界面。
  • 小型项目和教育目的:对于不需要复杂界面的小型项目,或者在教学环境中向学生介绍GUI编程的概念,EasyGUI是一个理想的选择。
  • 脚本和工具:对于需要简单用户输入的脚本或工具,使用EasyGUI可以提供一个比命令行更友好的交互方式。

Python 简易图形界面库easygui 对话框大全-CSDN博客文章浏览阅读3.7k次,点赞112次,收藏91次。提供了“继续”和“取消”选项,并返回True(表示继续)或False(表示取消)。", title="结束", ok_button="干得好!easygui.ccbox(msg, title, choices=('退出[E]','取消[C]'))选择“Chocolate”后点OK就把所选择的项赋值给变量choice,点Cancel则返回None。如果选择了第一个按钮,则返回“True”。提供了Yes和No的选择,并返回“True”或“False”。在列表框中提供了可供选择的由元组或列表指定的选项列表。https://blog.csdn.net/boysoft2002/article/details/135179267上回说到easygui前9种对话框样式,这回分享另外10种:

对话框样式

10. 文件打开框 fileopenbox

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

    Displays an "open file" dialog box and returns the selected file as a string.

    The "default" argument specifies a filepath that (normally) contains one or more wildcards.

    fileopenbox() will display only files that match the default filepath.
    If omitted, defaults to "\*" (all files in the current directory).

    :param str msg: the msg to be displayed.
    :param str title: the window title
    :param str default: filepath with wildcards
    :param object filetypes: filemasks that a user can choose, e.g. "\*.txt"
    :param bool multiple: If true, more than one file can be selected

    :return: the name of a file, or None if user chose to cancel

显示“打开文件”对话框,并将所选文件作为字符串返回。“default”参数指定(通常)包含一个或多个通配符的文件路径。例如,默认打开Excel文件如下:

import easygui as eg
eg.fileopenbox(msg=None, title=None, default='*.xls', filetypes=None, multiple=False)

Python 简易图形界面库easygui 对话框大全(续),Python,python

11. 文件保存框 filesavebox

filesavebox(msg=None, title=None, default='', filetypes=None)
    A file to get the name of a file to save.
    Returns the name of a file, or None if user chose to cancel.

    **About the "default" argument**

    The ``default`` argument specifies the path and "glob pattern" for file names. The "\*" value, for example, sets the open file dialog to the current working directory and showing all files.

    For another example, setting the ``default`` argument to ``"C:/myjunk/*.py"`` sets the open file dialog to the C:\myjunk folder and showing only files that have the .py file extension. This glob pattern at the end of the ``default`` argument is required: passing ``"C:/myjunk"`` would not set the open file dialog to the C:\myjunk folder, but rather to the C:\ folder and "myjunk" as the initial filename.
    Note that on Windows, ``fileopenbox()`` automatically changes the path separator to the Windows path separator (backslash).
    The "filetypes" argument works like the "filetypes" argument to fileopenbox.

    :param str msg: the msg to be displayed.
    :param str title: the window title
    :param str default: default filename to return
    :param object filetypes: filemasks that a user can choose, e.g. " \*.txt"

    :return: the name of a file, or None if user chose to cancel

用于获取要保存的文件的名称的文件。返回文件名,如果用户选择取消,则返回“无”。

import easygui as eg
eg.filesavebox(msg=None, title=None, default='*.xls', filetypes=None)

Python 简易图形界面库easygui 对话框大全(续),Python,python

12. 目录打开框 diropenbox

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

    A dialog to get a directory name.
    Returns the name of a directory, or None if user chose to cancel.
    If the "default" argument specifies a directory name, and that directory exists, then the dialog box will start with that directory.

    :param str msg: used in the window title on some platforms
    :param str title: the window title
    :param str default: starting directory when dialog opens

    :return: Normalized path selected by user

用于获取目录名的对话框。返回目录的名称,如果用户选择取消,则返回“无”。

如果“default”参数指定了一个目录名,并且该目录存在,则对话框将从该目录开始。

import easygui as eg
eg.diropenbox(msg=None, title=None, default=r'E:\Tables')

Python 简易图形界面库easygui 对话框大全(续),Python,python

13. 索引对话框 indexbox

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

    The ``indexbox()`` function displays a set of buttons, and returns the index of the selected button. For example, if you invoked index box with three choices (A, B, C), indexbox would return 0 if the user picked A, 1 if he picked B, and 2 if he picked C.

    :param str msg: the msg to be displayed
    :param str title: the window title
    :param list choices: a list or tuple of the choices to be displayed
    :param str image: Filename of image to display
    :param str default_choice: The choice you want highlighted when the gui appears
    :param str cancel_choice: If the user presses the 'X' close, which button should be pressed

    :return: the index of the choice selected, starting from 0

显示一组按钮,并返回所选按钮的索引。例如,如果您使用三个选项(A、B、C)调用索引框,则如果用户选择A,indexbox将返回0,如果用户选择B,则返回1,如果选择C,则返回2。

Python 简易图形界面库easygui 对话框大全(续),Python,python

import easygui as eg
result = eg.indexbox('Which door do you choose?', 'Win Prizes!', choices=['Door 1', 'Door 2', 'Door 3'])
if result == 2:
    eg.msgbox('You win a new car!')
else:
    eg.msgbox('Better luck next time.')

14. 例外报告框 exceptionbox

exceptionbox(msg=None, title=None)

    Display a box that gives information about an exception that has just been raised.
    The caller may optionally pass in a title for the window, or a msg to accompany the error information.
    Note that you do not need to (and cannot) pass an exception object as an argument.  The latest exception will automatically be used.

    :param str msg: the msg to be displayed
    :param str title: the window title

    :return: None

报告错误或例外异常的信息,调用者可以选择性地传入窗口的标题或伴随错误信息的消息。

Python 简易图形界面库easygui 对话框大全(续),Python,python

15. 代码文本框 codebox

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

    Display some text in a monospaced font, with no line wrapping.
    This function is suitable for displaying code and text that is formatted using spaces.

    The text parameter should be a string, or a list or tuple of lines to be displayed in the textbox.

    :param str msg: the msg to be displayed
    :param str title: the window title
    :param str text: what to display in the textbox

与多行文本框textbox(msg='', title=' ', text='', codebox=False, callback=None, run=True)很相似,少了后面三个参数:

Python 简易图形界面库easygui 对话框大全(续),Python,python

16. 密码输入框 passwordbox

passwordbox(msg='Enter your password.', title=' ', default='', image=None, root=None)

    Show a box in which a user can enter a password.
    The text is masked with asterisks, so the password is not displayed.

    :param str msg: the msg to be displayed.
    :param str title: the window title
    :param str default: value returned if user does not change it

    :return: the text that the user entered, or None if they cancel
      the operation.

显示一个框,用户可以在其中输入密码。文本用星号屏蔽,因此不会显示密码。

import easygui as eg
eg.passwordbox(msg='请输入密码:', title='密码输入框', default='456123', image=None, root=None)

Python 简易图形界面库easygui 对话框大全(续),Python,python

17. 多重文本框 multenterbox

multenterbox(msg='Fill in values for the fields.', title=' ', fields=[], values=[], callback=None, run=True)
    Show screen with multiple data entry fields.
    If there are fewer values than names, the list of values is padded with empty strings until the number of values is the same as the number of names.
    If there are more values than names, the list of values is truncated so that there are as many values as names.

    Returns a list of the values of the fields, or None if the user cancels the operation.

    :param str msg: the msg to be displayed.
    :param str title: the window title
    :param list fields: a list of fieldnames.
    :param list values: a list of field values

    :return: String

显示包含多个数据输入字段,即同一个对话框中有多个单行文本框。例如:

import easygui as eg
msg = "Enter your personal information"
title = "Credit Card Application"
fieldNames = ["Name","Address","City","State","ZipCode"]
fieldValues = []  # we start with blanks for the values
fieldValues = eg.multenterbox(msg,title, fieldNames)
# make sure that none of the fields was left blank
while 1:
    if fieldValues is None: break
    errmsg = ""
    for i in range(len(fieldNames)):
        if fieldValues[i].strip() == "":
            errmsg += ('"%s" is a required field.\n\n' % fieldNames[i])
        if errmsg == "":
            break # no problems found
        fieldValues = eg.multenterbox(errmsg, title, fieldNames, fieldValues)
print("Reply was: %s" % str(fieldValues))

Python 简易图形界面库easygui 对话框大全(续),Python,python

18. 组合密码框 multpasswordbox

multpasswordbox(msg='Fill in values for the fields.', title=' ', fields=(), values=(), callback=None, run=True)

    Same interface as multenterbox.  But in multpassword box, the last of the fields is assumed to be a password, and is masked with asterisks.

    :param str msg: the msg to be displayed.
    :param str title: the window title
    :param list fields: a list of fieldnames.
    :param list values: a list of field values

    :return: String

与多重文本框相似,但最后一个是密码框,输入会补星号代替,例如:

import easygui as eg
msg = "输入你的登录信息:"
title = "组合密码框"
fieldNames = ["账号:", "密码:"]
fieldValues = eg.multpasswordbox(msg,title, fieldNames)

# make sure that none of the fields was left blank
while 1:
    if fieldValues[0].strip() == "":
        errmsg = '账号不可为空!'
        fieldValues = eg.multpasswordbox(errmsg, title, fieldNames, fieldValues)
    elif fieldValues[1].strip() == "":
        errmsg = '密码不可为空!'
        fieldValues = eg.multpasswordbox(errmsg, title, fieldNames, fieldValues)
    else:
        break

print("账号、密码分别为: %s" % fieldValues)

Python 简易图形界面库easygui 对话框大全(续),Python,python

19. 多项选择框 multchoicebox

multchoicebox(msg='Pick an item', title='', choices=None, preselect=0, callback=None, run=True)

    The ``multchoicebox()`` function provides a way for a user to select from a list of choices. The interface looks just like the ``choicebox()`` function's dialog box, but the user may select zero, one, or multiple choices.

    The choices are specified in a sequence (a tuple or a list).

    :param str msg: the msg to be displayed
    :param str title: the window title
    :param list choices: a list or tuple of the choices to be displayed
    :param preselect: Which item, if any are preselected when dialog appears
    :return: A list of strings of the selected choices or None if cancelled.

与单项选择框 choicebox() 相似,只有单项选择和多项选择的区别:

import easygui as eg
msg ="What is your favorite flavor?"
title = "Ice Cream Survey"
choices = ["Vanilla", "Chocolate", "Strawberry", "Rocky Road"]
choice = eg.multchoicebox(msg, title, choices)

Python 简易图形界面库easygui 对话框大全(续),Python,python

总结

EasyGUI为Python开发者提供了一个快速创建基本图形用户界面的途径。它降低了GUI开发的门槛,使得即使是没有经验的开发者也能轻松构建出功能完善的界面。尽管它可能不适合复杂的应用程序或专业的软件开发项目,但对于快速原型设计、小型项目和教学目的来说,它是一个强大而高效的工具。通过利用EasyGUI的简单性和灵活性,开发者可以专注于解决问题,而不是纠结于复杂的界面细节。


文章来源地址https://www.toymoban.com/news/detail-767907.html

到了这里,关于Python 简易图形界面库easygui 对话框大全(续)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MFC基于对话框——仿照Windows计算器制作C++简易计算器

    目录 一、界面设计 二、设置成员变量 三、初始化成员变量  四、初始化对话框 ​五、添加控件代码 1.各个数字的代码(0~9) 2.清除功能的代码 3.退格功能的代码 4.加减乘除功能的代码 5.小数点功能的代码 6.正负号功能的代码 7.等于功能的代码 六、源码领取方式 制作好之后

    2024年02月05日
    浏览(44)
  • WPF HandyControl 界面交互反馈:对话框+加载框+列表选择

    我学了HandyControl的基础使用,但是发现HandyControl 封装了基础的消息提示,但是没有封装基础的交互逻辑。可能是因为我写了Uniapp,我知道封装了基础的交互其实一般就够用了。 Uniapp 界面交互反馈 我现在觉得,代码要低耦合一点,每个模块都纯粹一点,这一次我就不添加Nl

    2024年01月19日
    浏览(30)
  • 【pyqt5界面化工具开发-8】窗口开发-QDialog对话框

    目录 一、调用父类的菜单 二、添加更多的布局在对话框内 和前面Qwedget一样的结构(不做过多介绍) 可以参考代码中的注释 这和前面讲的Qwedget窗口布局基本上一样了 运行结果:

    2024年02月11日
    浏览(35)
  • .net-----Windows 窗体应用程序包括控件,对话框,多重窗体,绘制图形,菜单和工具栏

    Windows窗体应用程序概述;  使用Visual Studio开发Windows窗体应用程序;  窗体和控件概述;  使用常用Windows窗体控件;  通用对话框;  菜单和工具栏;  多重窗体;  多文档界面;  绘制图形 Windows窗体应用程序是运行在用户计算机本地的基于Windows的应用程序,

    2024年02月04日
    浏览(48)
  • Avalonia中用FluentAvalonia+DialogHost.Avalonia实现界面弹窗和对话框

    本文是项目中关于 弹窗界面 设计的技术分享,通过 FluentAvalonia + DialogHost.Avalonia 开源nuget包来实现项目中需要 弹框显示的界面 和所有的 对话框 的展示。 效果如下: 本项目是基于Avalonia的GPT的AI会话项目。采用的是最新稳定版本 11.0.0-rc1.1 。希望通过该项目了解和学习Avalon

    2024年02月16日
    浏览(42)
  • 计算机图形学实验——利用MFC对话框实现多边形绘制与填充(扫描线填充算法)附源码

    内容概括: 利用基于对话框的MFC项目 实现鼠标点击绘制多边形 实现扫描线算法填充多边形 源码见Yushan-Ji/ComputerGraphics: ECNU2023秋 计算机图形学课程实验代码 (github.com) 通过鼠标交互输入多边形 对各种多边形进行填充,包括边界自交的情况 利用 OnLButtonDown 和 OnRButtonDown 函数,

    2024年02月04日
    浏览(45)
  • Python Qt6快速入门-自定义对话框和标准对话框

    对话框是有用的 GUI 组件,可以与用户进行交流(因此得名对话框)。 它们通常用于文件打开/保存、设置、首选项或不适合应用程序主 UI 的功能。 它们是位于主应用程序前面的小模态(或阻塞)窗口,直到它们被关闭。 Qt 为最常见的用例提供

    2024年02月03日
    浏览(37)
  • 微信小程序开发系列(二十九)·界面交互API·loading 提示框、showModal模态对话框、showToast消息提示框

    目录 1.  loading 提示框 1. 1  wx.showLoading()显示loading提示框 1.2  wx.hideLoading()关闭 loading 提示框 2.  showModal 模态对话框 3.  showToast 消息提示框         小程序提供了一些用于界面交互的 API,例如:loading 提示框、消息提示框、模态对话框等 API。 loading 提示框常配合网络请

    2024年03月25日
    浏览(32)
  • QT调用不同UI界面响应,对话框跳转到主页面UI,用信号与槽传递信息,两级信号传递

    在MainWindow界面有一个按键”新建”,点击后需要生成一个输入对话框,实例用到了processDialog类对象。 我新建一行数据完成后,需要更新MainWindow表格的视图,此时就需要调用写在MainWIndow下的函数MainWindow::showProcess(vectorPCB* readyQueue) 但是如果实例化一个MainWidow对象,此时修改的

    2024年02月12日
    浏览(33)
  • Python 的Tkinter包系列之四:对话框

    对话框是计算机用户和计算机程序之间进行交互的重要手段。对话框是大多数现代GUI应用程序不可或缺的一部分。 Tkinter提供了这些对话框子模块: 消息框messagebox,由tkinter.messagebox模块提供 tkinter.messagebox --- Tkinter 消息提示 — Python 3.10.8 文档 文件选择对话框filedialog,由tki

    2024年02月04日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包