如何将事件从QML信号处理程序传递到基类

时间:2017-06-08 17:13:52

标签: qt qml

我有TextField个对象,我希望稍微更改onTabPressed的行为。我正在使用Keys附加对象:

Keys.onTabPressed: {
  model.item.value = text;
}

然后我失去了在TextField之间切换的典型行为。在QtWidgets中,我会用return QTextField::onTabPressed(event)之类的东西完成它。

是否有任何方法可以将事件类似地传播到基类'事件处理程序换句话说,是否可以调用基类'函数来自派生类的相同功能?

1 个答案:

答案 0 :(得分:0)

奇怪,我以为我已经检查过了。解决方案是阻止事件被接受,然后它会自动传播,如https://forum.qt.io/topic/19083/solved-work-around-qml-calling-overriden-functions/6中所示。就我而言:

Keys.onTabPressed: {
  model.item.value = text;
  event.accepted = false
}