QML TextInput信号

时间:2016-05-14 10:26:04

标签: qml textinput

我花了很多时间解决这个问题而没有成功。 单击textInput元素时,我只需要一个信号。喜欢onClicked。 只是为了让我们知道,这个TextInput被选中或点击了。

我有更多的TextInput元素,我只需要当前的元素来发出信号。我尝试使用焦点,但也发出了前一个元素。

非常感谢。

1 个答案:

答案 0 :(得分:0)

TextArea在单击时不会发出信号。如果您只对点击感兴趣,则应在顶部添加MouseArea。您可以将mouse.accepted设置为false以使事件冒泡,以便TextInput获取click事件并对其进行处理。请注意,在处理发生在TextInput

之前,您将在MouseArea中获取事件
TextInput {
  // ...

  MouseArea {
    anchors.fill: parent
    propagateComposedEvents: true

    onClicked: {
      console.log("clicked on TextInput");
      mouse.accepted = false;
    }
  }
}