如何在主窗口上设置图标并使用QT设置操作

时间:2015-03-26 17:05:38

标签: c++ qt

老实说,我不了解资源文件以及如何让我的事情能够完成,因为它已经部分解释给我了,我很困惑在哪里放置图标以及如何在我的程序中显示它。< / p>

setWindowIcon(QIcon(":/images/icon.png")); 

它不显示甚至显示错误。

3 个答案:

答案 0 :(得分:8)

创建名为resources.qrc的资源文件:

<!DOCTYPE RCC><RCC version="1.0">
<qresource>
  <file>path/to/icon.png</file>
</qresource>
</RCC>

确保path/to/icon.png是一个实际路径,相对于包含resources.qrc 的目录。

.pro文件中,添加资源:

TARGET = your_app
TEMPLATE = app
QT += widgets 
RESOURCES += path/to/resources.qrc

再次确保path/to/resources.qrc存在,相对于包含项目文件的目录

编译后,您的资源将嵌入到您的可执行文件中。它可以像:

一样访问
setWindowIcon(QIcon(":/path/to/icon.png"));

如果图标未显示,请尝试stackoverflow questionthis one

另一种方法是使用Application Icon。这会在桌面和开始菜单上设置应用程序的应用程序图标,也会在QMainWindowQDialogs的左上角设置应用程序图标

答案 1 :(得分:4)

使用QtCreator的Designer窗口不是最简单的吗?在右下角,您可以找到3个标签 - 单击最右侧的标签,然后单击笔:

qt designer resources

这将打开资源编辑器:

Qt creator Resources Editor

定义新资源文件(在左窗格下方),而不是添加“命名空间”(rigth窗格)并添加文件。您可以为它们设置别名,这样当您决定用其他东西替换您的图标时 - 只需保留相同的别名即可切换路径。然后,您可以通过别名引用您的资源,在需要的地方设置您的图标,例如: setWindowIcon(QIcon(":/HurBudClientGUI/plug"));

另外 - 请花点时间阅读:http://doc.qt.io/qt-5/resources.html以及:http://doc.qt.io/qt-5/designer-resources.html

祝你好运!

答案 2 :(得分:1)

有简单的解决方案: 只需转到主窗口的属性面板,然后将 WindowIcon 属性更改为所需的任何图标即可。