0

ユーザーが 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 で値を取得する方法です。

4

1 に答える 1

2

TextField コントロールからテキスト プロパティを取得し、その部分文字列を locker.lock に送信しようとしているようです。まず、プロパティと同じ名前のコントロールを id しないでください。うまくいくとしても(うまくいくかどうかはわかりませんが)、混乱します。textField の名前を lockText などに変更し、その値にアクセスします

lockText.text

使用する文字列のサブセットが必要なように見えるので

lockText.text.substring(0, 3)
于 2013-06-17T19:55:03.620 に答える