网站建设要会哪些方面,宁阳县网络seo,深圳香蜜湖街道,多语言网站建设 技术文章目录 1. QIcon / windowIcon2. setIcon() 与 setwindowIcon()2.1 setIcon() 介绍与使用2.2 setWindowIcon 介绍与使用 3. 路径问题 qrc机制的引入3.1 绝对路径 / 相对路径 的问题3.2 qrc机制3.3 在QtCreator下利用qrc机制引入图片 1. QIcon / windowIcon
QIcon QIco… 文章目录 1. QIcon / windowIcon2. setIcon() 与 setwindowIcon()2.1 setIcon() 介绍与使用2.2 setWindowIcon 介绍与使用 3. 路径问题 qrc机制的引入3.1 绝对路径 / 相对路径 的问题3.2 qrc机制3.3 在QtCreator下利用qrc机制引入图片 1. QIcon / windowIcon
QIcon QIcon 是Qt 框架中的一个类用于表示图标。它可以加载各种格式的图像文件并用于在 Qt 应用程序中显示图标。 使用 QIcon 类可以将图标设置为窗口标题栏、工具栏按钮、菜单项等控件的图标
windowIcon
windowIcon即应用程序 窗口的图标有以下两接口
API说明windowIcon()获取控件的图标并返回QIcon对象setWIndowIcon()设置控件的窗口图标 2. setIcon() 与 setwindowIcon()
2.1 setIcon() 介绍与使用
setIcon() 是用于 设置窗口部件如按钮、标签等的图标。它可以将一个 QIcon 对象设置为窗口部件的图标用于在界面中显示该部件的图标。
示例
在下面的例子中我们将下面的图标设置到按钮上 QPushButton *button new QPushButton(this);
QIcon icon(D:\\Coder\\pictures\\icons\\camera);
button-move(100, 100);
button-setIcon(icon);通过 setIcon() 设置的图标将会显示在指定的窗口部件上。 2.2 setWindowIcon 介绍与使用
setWindowIcon() 是用于 设置顶级窗口如主窗口、对话框等的图标。它可以将一个 QIcon 对象设置为顶级窗口的图标用于在窗口的标题栏、任务栏等位置显示该图标。
示例
QMainWindow *window new QMainWindow(this);
QIcon icon(D:\\Coder\\pictures\\icons\\camera);
window-setWindowIcon(icon);
window-show();通过 setWindowIcon() 设置的图标将会显示在窗口的标题栏、任务栏等位置。 3. 路径问题 qrc机制的引入
3.1 绝对路径 / 相对路径 的问题
首先简单提一点
图标文件路径应该是正确的否则图标可能无法加载。图标文件路径我们有两种选择使用转义符号\\或正斜杠/来表示路径分隔符因为反斜杠可能被解释为转义字符。
对于上面举的两例
我们所使用的路径是绝对路径即开发机上的路径。而程序最终要打包给用户使用绝对路径显然是没法正确将图片设置出来。而优于绝对路径我们可以选用相对路径如果将图片放到程序根目录或子目录中使用时直接搜索但依然面临问题如果用户无意把图片删掉那么程序最终执行依然会缺少相应资源。此时我们引入qrc机制
3.2 qrc机制
概念
首先qrc机制可以确保不会出现上述的两个问题可以确保 图片所在的路径一定会在用户机器存在。图片不会被用户删掉。 qrc机制 用于将资源文件嵌入到应用程序中。 通过使用qrc机制开发人员可以将图像、字体、样式表和其他资源文件作为二进制数据打包到应用程序中而无需将它们作为外部文件进行管理。
原理 QRC机制使用特殊的URL格式来引用资源文件。所有资源文件的路径都是相对于QRC文件本身的。 给Qt项目 引入一个xml文件以.qrc为后缀将要使用的资源文件导入到xml文件中并记录 Qt在项目编译时会根据qrc中的图片信息提取图片的二进制信息并将二进制数据转换为代码最终写入到exe中
缺点
qrc机制的缺点无法导入过大的资源文件 3.3 在QtCreator下利用qrc机制引入图片
我们在当前Qt项目中 添加Qt资源文件如下图所示 首先添加前缀即文件路径随后在所添加的qrc文件中添加文件 需要注意的是添加的资源文件一定要在res.qrc文件的同级目录或子目录。 添加文件后如下 此时我们执行下面的代码会有如下结果 如上图所示窗口的图标被正确的改变了