Qt 如何捕获QML中更改值的Spinbox事件?
主语 我使用项目的委托文本、标签和spinboxvalue元素在QML列表视图上显示数据。当用户更改spinbox的值时,我需要知道它并进行一些交易。但MouseArea在Spinbox之外工作,而不是在旋转按钮上,onClicked事件不存在Qt 如何捕获QML中更改值的Spinbox事件?,qt,events,qml,qtquick2,qtquickcontrols,Qt,Events,Qml,Qtquick2,Qtquickcontrols,主语 我使用项目的委托文本、标签和spinboxvalue元素在QML列表视图上显示数据。当用户更改spinbox的值时,我需要知道它并进行一些交易。但MouseArea在Spinbox之外工作,而不是在旋转按钮上,onClicked事件不存在 SpinBox { id: goodsCountSpinBox leftPadding: 1 rightPadding: 1
SpinBox {
id: goodsCountSpinBox
leftPadding: 1
rightPadding: 1
value: model.goodsCount
implicitWidth: 100
anchors.right: dataRow.right
MouseArea {
anchors.fill: parent
onClicked: {
listView.currentIndex = index; //Change the current selected item to the clicked item
console.log("SpinBox::MouseArea::onClicked")
}
}
顺便问一下,如何在控制台日志中显示当前日期时间
我在示例中发现onValueChanged,但在QML手册中找不到它
SpinBox {
id: fontSizeSpinBox
activeFocusOnPress: false
implicitWidth: 50
value: 0
property bool valueGuard: true
onValueChanged: if (valueGuard) document.fontSize = value
}
我发现要打印当前的时间戳
Qt.formatTime(new Date()
如果只想使用spinbox的当前值,只需在绑定中使用其
值
属性即可
如果要对值更改做出反应,请使用属性更改信号的处理程序,即
onValueChanged
onValueChanged
是一个。谢谢。它是所有类对象的公共信息。现在我明白了onChanged酒店的名称在哪里