在学习安晓辉大佬的《Qt Quick核心编程》时,照着大佬写的书上的代码敲,但是因为用的Qt版本不一样,所以代码中import部分的版本不一样,在搞Button时,如下代码:
import QtQuick 2.12
import QtQuick.Window 2.14
import QtQuick.Controls 2.14
import QtQuick.Controls.Styles 1.4
Window {
visible: true
width: 640
height: 480
title: qsTr("Image Viewer")
Button{
id:button
anchors.centerIn: parent
text: qsTr("Open")
style: ButtonStyle{
background: Rectangle{
implicitWidth: 100
implicitHeight: 40
color: openBtn.hovered?"#c0c0c0":"#a0a0a0"
border.width: openBtn.pressed?2:1
border.color: (openBtn.hovered||openBtn.pressed)?"green":"#888888"
}
}
}
}
这里style属性一直有一个红色下划线,如下图所示:
我查找了关于style的文档,但并没有查出所以然来,后来逼着没法,把代码重头到尾跟着书上的写,神奇发现style属性就不会报错,对比之后发现就是import中的“QtQuick.Controls”版本不一样,最后在网上查到资料2版本之后去掉了style属性,所以将上面的import改成以下就好了。
import QtQuick.Controls 1.4