为 QML 应用程序定义一个窗口图标
Posted
技术标签:
【中文标题】为 QML 应用程序定义一个窗口图标【英文标题】:Define a window icon for a QML application 【发布时间】:2017-01-04 18:52:59 【问题描述】:我目前正在阅读 QML 文档,我意识到没有关于如何定义应用程序图标的说明。
我尝试了一些东西,但这不起作用:
int main(int argc, char *argv[])
QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
QGuiApplication app(argc, argv);
app.setWindowIcon(QIcon(":/favicon.ico"));
QQmlApplicationEngine engine;
engine.load(QUrl(QLatin1String("qrc:/main.qml")));
return app.exec();
有人可以启发我吗? 在此先感谢:)
【问题讨论】:
没有可移植的方式,对于 windows,请将win32:RC_ICONS += appicon.ico
添加到您的 PRO 文件中。
已经完成。我也把我的图标放在了根文件夹中..
how to set an icon on a Main window and action with QT的可能重复
不,这是不同的,这是 QML 应用程序,而不是 C++
doc.qt.io/qt-5/appicon.html
【参考方案1】:
对我来说,它仅在使用 PNG 而不是 ICO 文件时才有效。 此外,您可能希望使用完整路径对其进行测试:
app.setWindowIcon(QIcon("C:/path_to_ico/favicon.png"));
或者直接 - 如果它位于您的工作目录中:
app.setWindowIcon(QIcon("favicon.png"));
只要这有效,您就可以尝试再次使用相对路径或资源访问 :-)
【讨论】:
使用 5.11.2,ico 文件对我有用(至少在 Windows 10 上)【参考方案2】:将图像添加到qrc
文件。然后给出以:/
开头的路径。
app.setWindowIcon(QIcon(":/images/favicon.png"));
Qt 版本:5.15.2
操作系统:Windows 10
【讨论】:
以上是关于为 QML 应用程序定义一个窗口图标的主要内容,如果未能解决你的问题,请参考以下文章