Я попытался получить текст, вставленный пользователем в элемент 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?
Похоже, вы пытаетесь получить свойство text из элемента управления TextField, а затем отправить его подстроку в locker.lock. Во-первых, вы не должны идентифицировать элемент управления с тем же именем, что и у свойства. Даже если это работает (что я не знаю, так и будет), это сбивает с толку. Переименуйте ваш textField во что-то вроде lockText, а затем получите доступ к его значению через
lockText.text
Так как похоже, что вы хотите подмножество строки, которую вы бы использовали
lockText.text.substring(0, 3)
Других решений пока нет …