QtQuick 2.1从TextInput获取文本

时间:2013-06-15 22:04:58

标签: c++ qml qtquick2

我试图让用户在textField qml的元素中插入文本并将其发送到函数。我已经将方法从c ++导出到qml并且工作正常,现在我不知道如何发送这里方法的字段值是qml源代码:

import QtQuick 2.1
import QtQuick.Controls 1.0
import QtQuick.Layouts 1.0
import QtQuick.Dialogs 1.0
Rectangle {
    width: 300
    height: 100
    TextField {
        id: text
        x: 40
        y: 39
        width: 152
        height: 22
        echoMode: 2
    }
    Button {
        id: button1
        x: 192
        y: 39
        width: 98
        height: 22
        text: "Lock/Unlock"
        onClicked: {locker.lock(text.getText(1,4))}
    }



}

所以问题是如何在TextField中获取值?

1 个答案:

答案 0 :(得分:1)

您似乎正在尝试从TextField控件获取text属性,然后将其子字符串发送到locker.lock。首先,您不应该使用与属性相同的名称来识别控件。即使它确实有效(我不知道它会这样),但这很令人困惑。将textField重命名为lockText,然后通过

访问其值
lockText.text

由于您希望使用

字符串的子集
lockText.text.substring(0, 3)