Easygui用法

戚洪昊 | 翻译
easyGUI是一个完整的开发系统,旨在创建基于现代显示的嵌入式系统的可视部分。

easyGUI将节省宝贵的开发时间,因为在视觉组件上的许多耗时的开发工作已从传统的直接编码转移到高效的视觉PC应用程序。

easyGUI适用于纯嵌入式系统,这意味着easyGUI图形库以及easyGUI生成的所有代码和数据均以纯C语言编写,并链接至嵌入式应用程序并由其完全控制。

在传统的嵌入式开发中,所有编码都直接在目标系统的C代码中完成。这种方法对于图形任务来说既缓慢又麻烦,因为在达到令人满意的结果之前,需要进行大量的反复试验。easyGUI利用PC作为图形或视觉应用程序的出色平台。easyGUI将目标系统编程的可视部分从C编码移到了面向视觉的PC应用程序。

easyGUI应用程序中的数据保存在项目中,其中每个项目都针对特定的显示大小,方向,颜色深度,字符模式(ANSI / Unicode)等进行设置。每个easyGUI项目都包含在一个文件中。在内部使用SQL关系数据库,以实现最大的效率和安全性,从而确保最高的数据安全标准。

可以在easyGUI许可证下创建任意数量的easyGUI项目。每个项目或每个生产项目都没有使用费,脚印或其他费用。

easyGUI应用程序根据easyGUI项目中的数据创建许多c和h文件。这些文件与easyGUI图形库,easyGUI显示驱动程序以及其他目标系统源文件一起被编译并链接到完成的目标系统二进制文件中。

easyGUI是由嵌入式人员从一开始就为嵌入式人员开发的,它对通常可用的有限资源持不变的看法。我们对嵌入式开发的广泛了解可确保easyGUI库在低内存使用和快速显示渲染之间取得最佳平衡。

easyGUI基于PC开发中心。所有字体,屏幕,翻译等都在easyGUI PC应用程序中创建和处理,然后以C文件的形式生成数据,以直接包含在目标系统固件源中。

在PC上设计GUI可以为用户节省大量时间,因为用户界面开发工作本质上是面向视觉的。因此,easyGUI将用户界面开发工作的主要部分从嵌入式C代码移至开发中心。这种方法还使开发PC模拟器应用程序变得容易,以进行早期开发/评估,营销目的,服务人员教育,文档编写等。PC模拟器的另一个主要优点是,即使没有任何硬件,也可以执行大部分固件开发。该项目存在。

所有easyGUI软件包都包括完整的字体编辑器,多语言支持,大量的显示驱动程序,显示旋转等等。easyGUI Unicode支持16位字符代码,从而可以使用特殊的(通常是非常大的)字符集轻松开发具有亚洲和中东语言的固件。除easyGUI Monochrome外,所有easyGUI软件包均支持每像素最多24位的任何颜色深度。

easyGUI库处理从初始化到屏幕渲染的所有显示处理。当然支持触摸屏。没有使用预编译的源代码,所有内容都使用纯C代码。
关于easyGUI的简要事实:

几乎支持所有单色,灰度和彩色显示控制器。
与微处理器类型
无关。与内核/操作系统
无关。支持ANSI C编译器系统。
多尺寸比例字体
Unicode字体
多语言应用程序
减少项目时间和资源减少
硬件准备时间,开始编程。
与带有或不带有RTOS的单任务和多任务环境兼容。
没有运行时/产品许可证!
通过easySIM PC模拟器快速建立原型
有效利用嵌入式资源
听起来很有趣?继续阅读!

通过任何控制器使用单色,灰度和彩色显示

由于easyGUI库与使用的实际显示类型无关,因此在设计用户界面时,不受显示限制的约束。该显示仅被视为图形画布,其中各个像素都是可寻址的。

在内部始终将GUI视为全彩色,然后在easyGUI生成文件时,将其简化为相关硬件允许的范围。

可以使用任何具有图形功能的显示器,即每个像素可单独寻址的显示器。这涵盖了当今市场上大多数LCD显示器。还可以使用其他显示技术,例如等离子体,荧光,OLED等。

显示控制器和微控制器之间的连接方法可以是任何类型,因为easyGUI显示驱动器仅适用于所使用的连接方法。也可以使用带有内置显示控制器的微控制器。

easyGUI将真正的两种颜色的显示(打开或关闭的像素)视为单色,并将所有其他类型的显示器视为彩色。

easyGUI Monochrome支持单色的全部图形功能,即1位/像素。

easyGUI颜色和easyGUI Unicode支持从1位/像素到2、4、5、8、12、15、16、18的颜色深度,直至24位/像素(真彩色)。颜色模式可以是灰度,基于调色板和直接RGB值。

使用所有LCD尺寸

easyGUI没有显示分辨率的正式限制。可以定义宽度和高度的任何分辨率,包括奇数。我们有运行800×600像素显示器的客户。

根据需要安装显示器

显示器可以在四个主要方向(正常,左,右,上下颠倒)中的任何一个上定向,而对用户界面没有任何限制。

使用现成的高质量比例字体

easyGUI带有多种字体,从3×7像素的小矩阵字符到18×30像素的大字体,都是为嵌入式应用量身定制的。easyGUI Unicode还包含几种完整的Unicode字体,其中包含多种语言的字符集,例如简体中文,平假名(日本),片假名(日本),日文汉字(日本),韩文(韩国),泰语,波斯(阿拉伯),希伯来语(以色列),西里尔语(俄罗斯),波兰语和希腊语。

所有字体都可以按比例显示,并具有固定间距,也可以为数字列专门设置格式。

此外,可以选择下划线以及自由选择前景色和背景色。

文本可以放置在任何像素位置,并根据需要对齐(左/中/右)。

还完全支持段落文本(多行文本项)。

为了减少代码,easyGUI压缩所有字体数据,并包含用于字体字符选择的高级功能,这对于具有10000个字符的大型Unicode字体尤为重要。

添加或编辑字体

使用灵活的内置字体编辑器,可以创建和管理不同大小和形状的字体。

每个字体可以包含224个字符(ANSI 8位字符代码,easyGUI单色和easyGUI彩色)或65504个字符(Unicode 16位字符代码,easyGUI Unicode)。

提供的字体中使用的所有字符代码均符合Windows和Unicode标准,从而使通过PC输入文本成为非问题。

可以基于导入的位图创建图标和字体。

Windows字体(TTF和OTF)可以栅格化并转换为easyGUI格式。

Unicode支持

easyGUI UNICODE还支持Unicode(即16位字符编码),该Unicode包含了全世界通用文本交换中使用的许多字符。

easyGUI UNICODE使您可以在所有图形LCD显示器上使用例如波斯语(阿拉伯语),希伯来语,西里尔字母,印度语,日语,中文,韩语,泰语和其他亚洲字体,而与显示控制器的功能无关。

多国语言支持

许多嵌入式应用程序要求能够显示不同语言的文本。easyGUI使用内置的翻译工具为多语言文本提供全面支持。

在easyGUI PC开发系统中,“语言”窗口允许执行翻译工作,并为参考语言和翻译语言提供即时的视觉反馈,以确保快速有效的翻译工作:

如果使用外部翻译器,easyTRANSLATE独立实用程序可能会派上用场。easyTRANSLATE不包含easyGUI中找不到的任何功能,它仅允许进行远程翻译。翻译文件从easyGUI项目中导出,并与easyTRANSLATE实用程序一起传送到翻译器中。翻译工作完成后,翻译人员返回语言文件,然后将其导入回easyGUI项目。

开发过程

用户界面的视觉方面是在easyGUI PC开发中心开发的,easyGUI PC开发中心是在Windows下运行的标准应用程序,非常适合此类视觉应用程序。由于必须使用反复试验方法,因此直接在目标系统中进行编码的旧开发方式要慢得多,尤其是在编译/链接过程很慢的情况下,这种方法可能会成为很大的负担。

easyGUI数据和库文件被编译和链接为目标系统的组成部分。但是这些easyGUI文件到底是什么?将其细分为更多细节可以解释这一点:

easyGUI生成一组数据文件,其中包含设置,字体,GUI设计等,这些文件与easyGUI库一起作为纯C源提供,并与适合您特定显示硬件的显示驱动程序一起被编译并链接到目标中系统应用程序。

easyGUI开发中心(PC应用程序)在数据库中包含所有数据(字体,显示,设置,翻译等),每个嵌入式项目一个文件。这些数据库文件都具有通用格式,因此,从easyGUI Monochrome升级到easyGUI Color的过程很简单。

easySIM PC模拟器

借助easySIM,作为标准Windows应用程序,可以在PC上模拟目标系统显示屏上的输出。所需的是easySIM附加软件包和合适的编译器。easySIM产生的显示输出与目标系统上的显示输出100%相同,因为它与所使用的库完全相同。对于许多目的来说,这是一个很大的优势,无论是用于演示,仿真,测试还是其他目的。

easySIM可以以多种复杂程度使用,从显示图像的简单表示到目标系统的完整仿真(包括硬件仿真),具体取决于仿真的目的。
字体
easyGUI Unicode可以处理两种类型的字符编码:ANSI和Unicode。两者都是在IT世界中广泛使用的标准。Unicode软件包是唯一能够使用Unicode标准的软件包,彩色和单色版本仅支持ANSI字符编码。

easyGUI所使用的ANSI覆盖了从代码32到255的224个字符。该编码与Microsoft Windows所使用的编码相同,从而使文本输入变得容易。大多数西方语言都包含在此字符集中,因为包括标准字符和一些特殊的国家字符。每个ANSI字符占用1个字节。

easyGUI中的ANSI字体。
购买任何easyGUI软件包,您将获得14种ANSI字体:
字体名称大小(以像素为单位):
ANSI字体的图像

easyGUI软件包中包含的字体旨在满足任何项目中字体的大多数需求,它们是专门为考虑屏幕而设计的,并且具有多种尺寸。

easyGUI附带的字体:

字体名称 字体大小
ANSI 7 6×11
ANSI 7粗体 7×11
ANSI 7压缩 5×11
ANSI 9 9×14
ANSI 11 9×17
ANSI 11压缩 8×17
ANSI 11灯 6×17
ANSI 11AA 18×20
ANSI 13 11×21
ANSI 17AA 24×29
ANSI 19 17×31
ANSI 23AA 28×37
ANSI 24 19×39
ANSI 30 21×47
Unicode 7/14粗体 15×16
Unicode 9/15 17×19
Unicode 11/16 18×20
easyGUI中的Unicode字体。
Unicode是一种标准,其中包括世界上几乎所有语言。每个Unicode字符占用2个字节,因此文本的内存消耗是ANSI文本的两倍。Unicode字符细分为代码图表,每个图表涵盖特定国家或地理实体的一系列字符。请在此处阅读有关Unicode基础的更多信息。

当前支持以下语言:

西方语言(ANSI字符集)
抛光
希腊语
西里尔文(俄罗斯)
希伯来语(以色列)
阿拉伯
泰国
朝鲜文(韩国,大约12.000个字符)
简体中文和繁体中文(约20.000个字符)
平假名(日本)
片假名(日本)
汉字(日本)
请注意,并非我们所有的Unicode字体都是完整的。如果您需要字体中不包含的特殊字符,我们可以将其设计为特殊订单。

easyGUI中的Unicode大小:
您还将收到3种不同大小的Unicode字体:

我们的UNICODE字体的图像

easyGUI字体导入功能
如果所包含的字体不能满足您的字体需求,则可以选择使用easyGUI中的导入功能制作自己的字体。此功能还可以设计自己的Icon字体。

将Windows字体导入easyGUI(或其他面向嵌入式世界的系统)时,必须将其从矢量图形转换为光栅图形。这个过程涉及许多陷阱。在easyGUI手册中导入矢量字体时,我们提供了一些好的建议(请参见“ TTF导入”一章)。

自定义字体
如果您需要其他字体,图标字体,Unicode字体或任何特殊字体,我们提供定制的easyGUI字体。我们将使您的规格符合最小的细节。我们的字体总是从头开始设计。请根据您的字体要求与我们联系,以了解价格和开发时间。
easyGUI是一个标准的32位PC应用程序,在Windows操作系统下运行。最低要求和建议是:

基于奔腾处理器或兼容的计算机。
至少256MB的RAM。1GB RAM或更多可确保更快地执行内存密集型操作。
至少150MB的可用硬盘空间。每个嵌入式项目都需要额外的硬盘空间。
Windows 7 / Vista / XP / 2000/8/10。在Windows 95/98 / ME或更早版本下,该系统将无法正常工作。
最小屏幕分辨率1024×768像素。任何标准的PC和显示器通常都可以正常工作,但是越大越好。1280×1024像素或更高的屏幕分辨率将给用户带来巨大的好处。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
### 回答1: easygui是Python中一个简单易用的图形用户界面(GUI)库,它可以帮助开发者快速创建各种GUI应用程序。下面是easygui用法教程: 1. 安装easygui库 在Python中使用easygui库之前,需要先安装该库。可以使用pip命令来安装: ``` pip install easygui ``` 2. 导入easygui库 在Python代码中使用easygui库,需要先导入该库: ``` import easygui ``` 3. 显示消息框 使用easygui库可以很方便地显示各种消息框,例如: ``` easygui.msgbox('Hello, world!') ``` 这个代码会显示一个消息框,其中包含一条消息“Hello, world!”。 4. 显示输入框 使用easygui库还可以显示输入框,例如: ``` name = easygui.enterbox('What is your name?') ``` 这个代码会显示一个输入框,其中提示用户输入姓名。用户输入的姓名会被保存在变量name中。 5. 显示选择框 使用easygui库还可以显示选择框,例如: ``` choices = ['Apple', 'Banana', 'Orange'] choice = easygui.choicebox('Which fruit do you like?', choices) ``` 这个代码会显示一个选择框,其中包含三个选项:Apple、Banana和Orange。用户选择的选项会被保存在变量choice中。 6. 显示文件选择框 使用easygui库还可以显示文件选择框,例如: ``` filename = easygui.fileopenbox('Select a file') ``` 这个代码会显示一个文件选择框,其中提示用户选择一个文件。用户选择的文件路径会被保存在变量filename中。 7. 显示目录选择框 使用easygui库还可以显示目录选择框,例如: ``` dirname = easygui.diropenbox('Select a directory') ``` 这个代码会显示一个目录选择框,其中提示用户选择一个目录。用户选择的目录路径会被保存在变量dirname中。 以上就是easygui库的用法教程,希望对你有所帮助! ### 回答2: Python中有许多GUI(图形用户界面)工具箱,包括Tkinter、wxPython、PyQt等等。而easygui是其中一种便于使用的工具,通过easygui,我们可以轻松地构建简单的GUI应用程序而无需大量编写代码。 下面是Python中easygui用法教程: 安装easygui: 使用pip install easygui 命令即可安装easygui包。或者在命令行环境下执行easygui.py脚本也可以使用,无需安装。 导入easygui: 在Python运行环境中,可以使用import easygui命令来导入easygui模块。 easygui的常用函数: 1. choicebox choicebox函数用于创建一个带有多个选项的对话框。例如: import easygui flavor = easygui.choicebox("选择你喜欢的口味:", "口味选择", ["香草", "巧克力", "草莓"]) 2. msgbox msgbox函数用于弹出一个简单的消息框,例如: import easygui easygui.msgbox("这是一个简单的消息框") 3. passwordbox passwordbox函数用于从用户那里收集一个密码,这个密码框只显示星号(*)而不是真正的文字,例如: import easygui password = easygui.passwordbox("请输入密码:") 4. textbox textbox函数将以文本形式打开一个文件,并以只读方式显示该文件的内容,例如: import easygui filename = easygui.fileopenbox() f = open(filename, "r") contents = f.read() f.close() easygui.textbox("文件的内容如下:", "文本框", contents) 5. diropenbox diropenbox函数用于打开文件浏览器以选择文件夹。例如: import easygui folder = easygui.diropenbox("选择你想要打开的文件夹") 6. buttonbox buttonbox函数用于创建一个带有多个按钮的对话框,其中每个按钮代表一个选项。例如: import easygui choices = ["是", "否", "取消"] reply = easygui.buttonbox("你要执行该操作吗?", "请做出选择", choices) 7. enterbox enterbox函数用于收集字符串,例如姓名、地址、电子邮件地址等信息,例如: import easygui name = easygui.enterbox("请输入你的姓名:") 8. multenterbox multenterbox函数用于收集多个字符串,例如姓名、地址、电子邮件地址等信息,例如: import easygui fields = ["姓名:", "地址:", "电子邮件地址:"] responses = easygui.multenterbox("请输入以下信息:", "经过认证的信息", fields) 上述仅仅是easygui的一些常用函数,它还包括其他很多方便的功能,可以根据需要使用不同的函数。总的来说,使用easygui能够极大地简化GUI应用程序的开发,使得开发人员可以更快地构建出各种应用程序。 ### 回答3: easygui是Python第三方库中的一个GUI工具包,它提供了一种简单和易于使用的方式,来创建基本的GUI窗口和控件。如果你想在Python中创建一些基本的图形化用户界面来进行数据的输入,输出和操作等任务,那么easygui库就是一个非常有用的工具。 首先,我们需要在Python中安装easygui库,可以使用pip工具来进行安装,命令为: ``` pip install easygui ``` 接下来就可以开始使用easygui来代替Python自带的GUI模块Tkinter等进行GUI程序开发了。下面介绍一些常用的easygui方法: - buttonbox buttonbox是一个创建简单对话框的函数,可以使用它来显示一些按钮,例如“确定”和“取消”等,以进行用户输入的判断。 ``` import easygui msgbox_title = "标题" msgbox_msg = "消息内容" choices = ["选择 1", "选择 2", "选择 3"] selected_choice = easygui.buttonbox(msgbox_msg, msgbox_title, choices) print("选择了:", selected_choice) ``` 这段代码创建了一个对话框,对话框显示了三个按钮,用户可选择其中任意一个按钮进行操作。通过buttonbox方法,可以获取到用户选择的按钮,根据所选按钮的值进行后续操作。 - enterbox enterbox是一个用于获取单行文本输入的方法,通常用于输入对话框。 ``` import easygui msgbox_title = "标题" msgbox_msg = "请输入内容:" user_input = easygui.enterbox(msgbox_msg, msgbox_title) print("用户输入的内容是:", user_input) ``` 这段代码通过enterbox方法获取用户输入的内容,并打印在控制台上。 - choicebox choicebox是用于创建列表对话框的方法,通常用于选择。 ``` import easygui title = "请选择" msg = "请选择以下选项:" choices = ["选项1", "选项2", "选项3"] selected_choice = easygui.choicebox(msg, title, choices) print("您选择了:", selected_choice) ``` 这段代码创建了一个列表对话框,用户可以从中选择一个选项。 - multenterbox multenterbox是用于获取多行文本输入的方法,通常用于输入对话框等。 ``` import easygui title = "请输入" msg = "请输入以下内容:" fields = ["姓名", "年龄", "邮箱", "地址"] user_input = easygui.multenterbox(msg, title, fields) print("用户输入的内容是:", user_input) ``` 这段代码创建了一个多行文本输入对话框,用户可以输入多个内容,然后通过多个文本框来进行输入操作。 以上只是easygui库中的一些常用方法,通过这些方法,可以轻松创建一些基本的GUI界面,实现一些简单的交互操作。需要注意的是,easygui的功能虽然简单,但其使用也有一些局限性,如果需要实现更加复杂的GUI界面,建议使用其他的Python GUI库,例如Tkinter、PyQt等。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值