1、图标分类介绍
这里图标我们分为两类,一类是wxPython内置的图标资源,以wx.Art_开始。wx.ART_
是 wxPython 提供的艺术资源(Art Resource)常量,用于在界面中快速访问通用的图标或位图资源。这些资源可以通过 wx.ArtProvider
获取,主要用于创建标准化的界面,例如工具栏、菜单和对话框中的图标。这类可以使用 wx.ArtProvider.GetBitmap
或 wx.ArtProvider.GetIcon
获取对应的位图或图标。
bitmap = wx.ArtProvider.GetBitmap(wx.ART_INFORMATION, wx.ART_OTHER, (32, 32)) icon = wx.ArtProvider.GetIcon(wx.ART_WARNING, wx.ART_OTHER, (16, 16))
参数说明:
id
:指定图标的类型,例如wx.ART_INFORMATION
、wx.ART_WARNING
等。client
:指定图标的用途,一般用wx.ART_OTHER
。size
:指定图标的尺寸,例如(16, 16)
或(32, 32)
。
常用 wx.ART_
图标列表
以下是一些常见的 wx.ART_
常量及其用途:
常量名称 | 描述 | 示例用途 |
---|---|---|
wx.ART_INFORMATION | 信息图标(蓝色圆圈中的“i”) | 消息框或工具栏中的信息提示 |
wx.ART_WARNING | 警告图标(黄色三角形) | 警告对话框 |
wx.ART_ERROR | 错误图标(红色圆圈中的“X”) | 错误提示框 |
wx.ART_QUESTION | 问号图标 | 确认对话框中的问题提示 |
wx.ART_FILE_OPEN | 打开文件图标 | 文件打开按钮或菜单项 |
wx.ART_FILE_SAVE | 保存文件图标 | 文件保存按钮或菜单项 |
wx.ART_FILE_SAVE_AS | 另存为图标 | 另存为操作 |
wx.ART_DELETE | 删除图标 | 删除按钮或菜单项 |
wx.ART_COPY | 复制图标 | 工具栏中的复制按钮 |
wx.ART_CUT | 剪切图标 | 工具栏中的剪切按钮 |
wx.ART_PASTE | 粘贴图标 | 工具栏中的粘贴按钮 |
wx.ART_UNDO | 撤销图标 | 撤销操作按钮 |
wx.ART_REDO | 重做图标 | 重做操作按钮 |
wx.ART_FIND | 查找图标 | 查找工具栏或菜单项 |
wx.ART_HELP | 帮助图标(问号) | 帮助按钮或菜单项 |
wx.ART_NEW | 新建文件图标 | 新建按钮或菜单项 |
wx.ART_TIP | 提示图标 | 工具提示或信息提示框 |
wx.ART_ADD_BOOKMARK | 添加书签图标 | 书签管理工具 |
wx.ART_DEL_BOOKMARK | 删除书签图标 | 书签管理工具 |
wx.ART_GO_BACK | 返回图标 | 浏览器中的后退按钮 |
wx.ART_GO_FORWARD | 前进图标 | 浏览器中的前进按钮 |
wx.ART_GO_UP | 向上导航图标 | 文件管理器中的向上导航 |
wx.ART_GO_DOWN | 向下导航图标 | 文件管理器中的向下导航 |
wx.ART_EXECUTABLE_FILE | 可执行文件图标 | 显示可执行文件类型 |
wx.ART_NORMAL_FILE | 普通文件图标 | 显示普通文件类型 |
wx.ART_FOLDER | 文件夹图标 | 显示文件夹类型 |
wx.ART_FOLDER_OPEN | 打开文件夹图标 | 文件夹展开时显示 |
wx.ART_PRINT | 打印图标 | 打印操作按钮或菜单项 |
wx.ART_REPORT_VIEW | 报表视图图标 | 改变视图样式的按钮 |
wx.ART_LIST_VIEW | 列表视图图标 | 改变视图样式的按钮 |
通过使用 wx.ART_
,可以显著提高界面的一致性和开发效率!
另外一类是我们自己自定义的图标资源,为了方便整合使用,我们往往把它作为嵌入资源的方式,放在一个文件里面,如下所示。
需要的时候,直接导入这个core_image进行使用即可。
import core.core_images as images img: wx.Image = ( images.catalog[name].Image if name in images.catalog else result ) img = img.Scale(icon_size, icon_size, wx.IMAGE_QUALITY_HIGH) result = wx.Bitmap(img)
为了方便添加,我们可以使用wxpython的内置工具类img2py来生成代码到指定.py文件中。
from wx.tools import img2py
然后可以通过命令行来生成代码到python类文件中。
"-a -F -n TestStar2 bmp_source/teststar.png images.py"
需要详细了解各个参数的意思,可以查看 img2py.py 例子代码的说明即可。
我为了方便,参考修改编写了一个独立的工具类来方便生成所需的代码。
我可以再文件目录中选择所需的文件,然后右键复制文件地址,把它们路径复制出来。
2、图标的选择界面及使用
前面介绍了两种不同的图标资源库,我们应该再框架系统中能够顺利使用它们,以便为我们的工具栏、菜单、按钮等地方添加有趣而有意义的图标,比单纯的文本会好看很多。
如列表界面中的工具栏、按钮都采用了和内容一致的图标,比较美观一些。
https://book.qq.com/book-search/%E5%90%8D%E4%BC%98%E9%A6%86%E7%BD%91%E3%80%9023Y4.com%E3%80%91?c31a
https://book.qq.com/book-search/%E6%B5%B7%E8%A7%92%E7%A4%BE%E5%8C%BA%E3%80%9023Y4.com%E3%80%91?c31b
https://book.qq.com/book-search/%E8%89%B3%E6%AF%8D%E7%BD%91%E8%BF%9B%E3%80%9023Y4.com%E3%80%91?c31c
https://book.qq.com/book-search/%E6%9E%9C%E5%86%BB%E4%BC%A0%E5%AA%92%E3%80%9023Y4.com%E3%80%91?c31d
https://book.qq.com/book-search/%E6%9E%9C%E5%86%BB%E4%BC%A0%E5%AA%92%E8%BF%9B23Y4.com%E7%9C%8B?c31e
https://book.qq.com/book-search/%E6%80%A7%E5%B7%B4%E5%85%8B%E8%BF%9B%E3%80%9023Y4.com%E3%80%91?c31f
https://book.qq.com/book-search/%E7%88%B1%E5%A8%81%E5%A5%B6%E7%BD%91%E3%80%9023Y4.com%E3%80%91?c31g
https://book.qq.com/book-search/%E7%A6%81%E6%BC%AB%E5%A4%A9%E5%A0%82%E3%80%9023Y4.com%E3%80%91?c31h
https://book.qq.com/book-search/%E6%92%B8%E6%92%B8%E7%A4%BE%E7%BD%91%E3%80%9023Y4.com%E3%80%91?c31i
https://book.qq.com/book-search/%E6%8A%96%E9%98%B4%E4%B8%8B%E8%BD%BD%E3%80%8A23Y4.com%E3%80%8B?c31i
https://book.qq.com/book-search/%E6%8A%96%E9%98%B4%E7%BD%91%E7%AB%99%E3%80%9023Y4.com%E3%80%91?c31k
https://book.qq.com/book-search/%E4%B9%85%E4%B9%85%E7%83%AD%E7%9C%8B%E3%80%9023Y4.com%E3%80%91?c31l
https://book.qq.com/book-search/%E4%B9%85%E4%B9%85%E7%83%AD%E8%BF%9B%E3%80%9023Y4.com%E3%80%91?c31m
https://book.qq.com/book-search/%E6%92%B8%E6%92%B8%E7%A4%BE%E8%BF%9B%E3%80%9023Y4.com%E3%80%91?c31n
https://book.qq.com/book-search/%E4%B8%8B%E8%BD%BD%E6%8A%96%E9%98%B4%E3%80%9023Y4.com%E3%80%91?c31o
https://book.qq.com/book-search/%E8%89%B3%E6%AF%8D%E5%9C%B0%E5%9D%80%E3%80%9023Y4.com%E3%80%91?c31p
https://book.qq.com/book-search/%E7%9C%8B%E8%89%B3%E6%AF%8D%E8%BF%9B%E3%80%9023Y4.com%E3%80%91?c31q
https://book.qq.com/book-search/%E8%89%B3%E6%AF%8D%E7%9C%8B%E8%BF%99%E3%80%9023Y4.com%E3%80%91?c31r
https://book.qq.com/book-search/%E8%89%B3%E6%AF%8D%E5%9C%B0%E5%9D%80%E8%BF%9B23Y4.com%E7%9C%8B?c31s
https://book.qq.com/book-search/%E8%89%B3%E6%AF%8D%E5%9C%B0%E5%9D%80%E6%9D%A523Y4.com%E7%9C%8B?c31t
有时候,我们右键菜单也可以根据图表库选择一致意义的图标。
表格显示的右键菜单
或者树形列表的右键菜单