伙计们,我正在 BlackBerry 10 中开发基本应用程序,我想获取 TextField 中的文本(在 cpp 中)。我正在尝试为此找到方法,但没有找到正确的方法。所以任何人都可以告诉我如何从 cpp 中的 TextField 中获取值(不是在 qml 中)???
问问题
463 次
2 回答
3
那么,您需要做的第一件事就是将您的 QML TextField 暴露给 C++。这是通过对象名称属性 ala 完成的:
TextField {
objectName: "myTextField"
...
}
接下来,从你的 C++ 中找到这个孩子:
QmlDocument *qml = QmlDocument::create("asset:///my.qml");
Container *root = qml->createRootObject<bb::cascades::Container>(); //or whatever the root control is
TextField *textField = root->findChild<TextField*>("myTextField");
从那时起,只需使用 textField->text()。
于 2013-08-28T13:14:38.760 回答
0
我们在这个问题中有 3 个部分
首先在 Qml 你的文本区域和底部单击发送文本区域以在 C++ 中运行
TextField {
id: n2
}
Button {
id: button
text: "send text"
onClicked: {
app.sendtext(n2.text)
}
第二部分您的 ApplicationUI 中的 c++ 函数以接收此文本
QString ApplicationUI::sendtext(QString txtarea)
{
QString text = txtarea;
return text;
}
ApplicationUI.hu 中的第三部分和最后一部分必须使此函数可调用才能在 Qml 中访问它
所以你需要这条线
Q_INVOKABLE QString sendtext(QString txtarea);
于 2013-08-28T08:40:51.210 回答