QT5.2 Assistant-设置应用程序图标
在Qt助手(assistant.exe)搜索关键字"Setting the Application Icon"就可以看到在各种平台设置Qt程序图标的方法,包括QT支持的Windows、MAC、Linux(KDE和GNOME)都有相应的方法。
下面是我翻译的关于Qt5.2:Setting the Application Icon的译文,如有不合理的地方还望大家指出,原文来自QT5.2助手的【Set the Application Icon】一节。
设置应用程序图标
应用程序图标,通常显示在一个应用程序的顶层窗口的左上角,可以通过调用QWindow:: setWindowIcon()设置。
为了改变可执行的应用程序文件本身的图标,因为它被呈现在桌面上(即,在应用之前执行)上,有必要使用另一个依赖于平台的技术。
内容
一、 在Windows上设置应用程序图标
二、 在
Mac OS X上设置应用程序图标
2、GNOME
一、在Windows上设置应用程序图标
首先,创建一个包含icon图像的一个ico格式的位图文件。这个可以使用诸如微软的VC++来完成:
选择File|New菜单,然后在出现的对话框中选择File选项卡,并选择图标。(注意:你不需要加载你的应用程序到Visual C++中;在这里我们只使用其图标编辑器。)
保存上面的icon文件到你的应用程序的源代码目录,例如,名为myappico.ico。
然后,假设你正在使用qmake生成你的makefile文件,你只需要添加一个单一的行到您的Pro项目文件:
RC_ICONS = myappico.ico
最后,重新生成你的makefile和你的应用程序。exe文件将通过在资源管理器中的图标来表示。
然而,如果您已经有了一个.rc文件,例如名为myapp.rc文件,您想重用该文件,那么需要以下的两个步骤:
首先,在myapp.rc文件中添加一个单行的文本,如下:
IDI_ICON1 ICON DISCARDABLE "myappico.ico"
然后,在你的myapp.pro文件中添加如下行:
RC_FILE = myapp.rc
如果你不使用qmake,必需的步骤是:首先,创建一个.rc文件,并运行rc或windres程序用于该.rc文件,然后将得到的.res结果文件链接到你的应用程序。
二、在 Mac OS X上设置应用程序图标
应用程序图标,通常显示在应用程序的停靠区域,是通过调用QWindow::setWindowIcon()在窗口上设置。在函数调用之前,程序可能出现在应用程序的停靠区域,这是可能的;在这种情况下,默认的图标会弹跳的动画过程中出现。
为了确保正确的图标出现,当应用程序被启动,和在Finder这两种情况下,有必要采用一种平台相关的技术。
虽然许多程序可以创建图标文件(.icns),推荐的方法是使用由苹果公司(在Developer/Application文件夹)提供的图标编辑器程序。图标编辑器允许您导入多个不同大小的图标(在不同的上下文中使用),以及与他们一起去的屏蔽图。在您的项目目录中将所有一系列的图标保存在一个文件中。
如果您正使用qmake生成makefile文件,您只需要将一个单一的行添加到您的.pro工程文件。例如,如果您的图标文件的名称是myapp.icns,并且您的项目文件名称是myapp.pro,加入这一行到myapp.pro:
ICON = myapp.icns
这将确保qmake把你的图标放在适当的位置并为图标创建一个Info.plist条目。
如果你不使用qmake,你必须手动执行以下几点:
1、为您的应用程序(使用PropertyListEditor,在Developer/Applications中可以找到)创建一个Info.plist文件。
2、在Info.plist文件(同样,使用PropertyListEditor)关联您的.icns记录和CFBundleIconFile记录。
3、将Info.plist文件复制到你的应用程序包的Contents目录。
4、复制.icns文件到你的应用程序包的Contents/Resoures目录。
三、在通用的Linux桌面上设置应用程序图标
在本节中,我们简要地介绍一下在两种常见的Linux桌面环境:KDE和GNOME,为应用程序提供图标的相关问题
。为这两种桌面,用来描述应用程序图标的核心技术是相同的,也可以适用于其他,但具体到每一个来讲也有各自的细节。对使用这些Linux桌面系统的标准信息的主要来源是freedesktop.org。有关其他Linux桌面的信息,请参阅您感兴趣的桌面文档。
通常情况下,用户不直接使用可执行文件,而是通过点击桌面上的图标来启动应用程序。这些图标是包含带有关于它的图标信息的应用程序的描述表示的“桌面项”文件。这两种桌面环境都能够在这些文件中检索信息,并且可以用它们来生成应用程序的快捷方式到桌面上,在开始菜单中,或者在面板上。
有关桌面项文件的更多信息,可以在Desktop Entry Specification中找到。
虽然桌面项文件可以有效地封装应用程序的详细信息,我们仍然需要将图标存储在每个桌面环境中的常规位置。用于图标的一些位置在Icon
Theme Specification中给出了。
虽然用于定位图标的路径依赖于在桌面上的使用和它的配置,下面所有这些目录结构应该遵循相同的模式:子目录都按照主题,图标大小和应用程序类型进行组织。通常,应用程序图标被添加到高彩主题,因此方形的应用程序图标的大小为32像素,它将被存储在hicolor/32x32/apps目录的图标路径的下方。
1、K桌面环境(KDE)
应用程序图标可以被所有用户或者一个单一的用户安装使用。当前登录到他们的KDE桌面的用户可以通过使用kde-config发现这些位置,例如,通过在终端窗口中键入执行下列操作:
kde-config --path icon
通常情况下,被输出到stdout的以冒号分隔的路径列表中包含了用户特定的图标路径和全系统的路径。下面这些目录中,可以根据在Icon
Theme Specification中描述的约定来定位并安装图标。
如果您正在专门为KDE开发,你不妨利用KDE build system的优势来配置您的应用程序。这可以确保你的图标被安装在KDE的适当位置。
KDE的开发者网站是http://developer.kde.org/。
2、GNOME
应用程序图标都存储在包含与体系结构无关文件的一个标准全系统目录下。这个位置可以通过使用gnome-config来确定,例如,通过在一个终端窗口中键入以下命令:
gnome-config --datadir
输出在标准输出stdout的路径指的是包含一个名为pixmaps目录的位置;这个pixmaps目录中的目录结构中在Icon
Theme Specification中进行了描述。
如果您正在专门为GNOME开发,你可能希望使用一组标准的GNU Build Tools,在GTK+/Gnome
Application Development book的相关章节也作了说明。这可以确保你的图标被安装在为GNOME中的适当位置。
GNOME的开发者网站是http://developer.gnome.org/。
QT5.2 Assistant-设置应用程序图标的更多相关文章
- Qt5设置应用程序图标
1.设置应用程序图标 简单三步走,搞定 ①创建一个图标格式的文件,可以网上在线将普通的图形格式转成.ico 格式的图标文件 http://www.faviconico.org/ 这个网站可以在线转换p ...
- Qt 设置应用程序图标
Qt4设置应用程序图标 将一个ico图标放在资源文件夹下; 然后建立txt,输入 IDI_ICON1 DISCARABLE "myico.ico"; 保存文件,将其后缀改为.rc; ...
- Qt之设置应用程序图标
简述 应用程序图标,通常显示在应用程序的顶层窗口的左上角,通过调用QWindow:setWindowIcon()函数来实现. 为了改变可执行程序文件本身的图标,因为它被呈现在桌面上,它必须采用另一种依 ...
- Swift - 设置应用程序图标的提醒个数(右上角小红圈)
使用UILocalNotification除了可以实现本地消息的推送功能(可以设置推送内容,推送时间,提示音),还可以设置应用程序右上角的提醒个数. 下面演示如何设置,效果图如下: --- AppDe ...
- 设置Android程序图标和程序标题
修改程序名称 在/res/values/strings.xml中修改程序名称,例如: <string name="app_name">你的程序名称</string ...
- 设置Android程序图标
先在/res/drawable/目录下放一个叫icon.png的图标图片(48×48),并且在/res/values/strings.xml中定义app_name 修改<string name= ...
- Qt 设置应用程序图标(windows)
Step 1: 创建 xxx.rc 文件. 将ico图标文件复制到项目根目录下.然后在该目录中新建xxx.rc文件,并输入一行代码: IDI_ICON1 ICON DISCARDABLE " ...
- QT 设置应用程序图标和可执行程序图标(另有setWindowTitle和setWindowIcon)
首先准备个ICO图标.例如:myappico.ico用记事本新建个文件里面就写一行:IDI_ICON1 ICON DISCARDABLE "/images/myap ...
- QT 设置应用程序图标和可执行程序图标
1, 首先准备个ICO图标.例如:myappico.ico 在工程目录下新建images文件夹并你的图标myappico.ico(只能用ico格式的图片)放到工程目录下的images文件夹下 2, 用 ...
随机推荐
- 三种JavaScript 消息框
prompt 提示框 <html><head><script type="text/javascript">function disp_prom ...
- Spark自定义维护kafka的offset到zk
import kafka.common.TopicAndPartition import kafka.message.MessageAndMetadata import kafka.serialize ...
- 51-python基础-python3-列表-常用列表方法- index()方法
index()方法 1-可以传入一个值,如果该值存在于列表中,就返回它的下标. 实例1: 2-如果该值不在列表中,Python 就报 ValueError. 实例2: 3-如果列表中存在重复的值,就返 ...
- 帮助_NOI导刊2010提高(03)
题目描述 Bubu的书架乱成一团了!帮他一下吧! 他的书架上一共有n本书.我们定义混乱值是连续相同高度书本的段数.例如,如果书的高度是30,30,31,31,32,那么混乱值为3,30,32,32,3 ...
- Hibernate4教程五:事务和并发
Hibernate本身没有事务的实现 Hibernate 直接使用 JDBC 连接和 JTA 资源,不添加任何附加锁定行为.也就是说你在Hibernate里面使用的事务要么是JDBC的事务,要么是JT ...
- columns样式属性使用
columns样式属性使用 columns:用于设置元素的列宽和列数.它是column-width和column-count的简写属性. 语法: columns: <'column-width' ...
- data-*存数据,拿出ul li中的数据
<ul class="questions"> <li> <div class="question">1.您的年龄是?< ...
- poj 2104 无修改主席树
题目大意: 求序列的区间第k大 基本思路: 因为我根本就没有思路,知道这是主席树,我就去学了下,在b站上看了uestc的教学视频,然后看了一篇博客,博客http://www.cnblogs.com/E ...
- PHP chroot() 函数
改变根目录: <?php// Change root directorychroot("/path/to/chroot/"); // Get current director ...
- Python基础(一):程序输入输出、判断合法用户、编写判断成绩的程序
一.程序输入输出 目标: 编写login.py脚本,实现以下目标: 提示用户输入用户名 将用户名保存在变量中 在屏幕上显示欢迎用户的信息 方案: 编写程序时,很多情况下都需要程序与用户交互.在pyth ...