标题:QML做的窗口如何自定义左上角的图标?
作者:rpdhunter
日期:2017-07-03 11:59
内容:
Qt Widget里面设置窗口图标非常简单,只需要QWdiget.setWindowIcon()
那么在QML里面,ApplicationWindow类型,却没有对应的图标属性,而且我看qt自带的QML例子,也没有发现自定图标的实例
那么请问,到底如何在QML里面实现这个功能?

#1 [lemonzll 07-03 14:47]
用QWindow::setIcon函数。你要是用QQuickView,直接调用这个函数就可以了,要是用QQmlApplicationEngine,用下面这段代码
auto window = qobject_cast(engine.rootObjects().first());
if (window) {
window->setIcon(QIcon(":/icon.ico"));
}
Windows上你要是程序图标和左上角图标一直是一样的,直接在pro文件里写RC_ICONS += icon.ico就可以了,这样左上角会显示程序图标
#2 [nigoole 07-03 15:06]
这个功能在main里面设置一样的app.setWindowIcon()
#3 回 lemonzll 的帖子 [rpdhunter 07-03 15:58]
lemonzll:用QWindow::setIcon函数。你要是用QQuickView,直接调用这个函数就可以了,要是用QQmlApplicationEngine,用下面这段代码
auto window = qobject_cast(engine.rootObjects().first());
if (window) {
.. (2017-07-03 14:47)
感谢
#4 回 nigoole 的帖子 [rpdhunter 07-03 15:59]
nigoole:这个功能在main里面设置一样的app.setWindowIcon()
(2017-07-03 15:06)
非常感谢
#5 [rpdhunter 07-03 16:00]
楼上两位大神的方法我都试过了
亲测有效!
我用的QQmlApplicationEngine模式调用QML,所以2楼的方式更简洁