【发布时间】:2020-04-07 08:25:30
【问题描述】:
我正在尝试熟悉 QML。我正在关注thisQt 提供教程,但遇到了问题。
问题:
在创建Cell.qml 文件时,我需要创建一个点击信号,其中名为cellColor 的单个参数被定义为color 类型(如果我理解正确)
../QMLTest/Cell.qml:6 意外令牌`:'
来自Cell.qml 的代码 sn-p 是:
import QtQuick 2.0
Item {
id: container
property alias cellColor: rectangle.color
signal clicked(cellColor: color) <-----Problem - line 6
width: 40; height: 25
//...
}
由于 QML 使用 Javascript,我想我会试试这个,它有效:
signal clicked(var cellColor)
一个明显的缺点是你丢失了定义的类型(基于我之前的假设)。
问题:
为什么提供的信号代码不起作用,使用var 关键字而不是定义类型有什么缺点吗?
更新
在回答被接受后添加。
我还应该提到,我正在使用 Qt Creator 4.10.0 和 Qt 5.13.1 (MSVC 32bit)
【问题讨论】: