DrK*_*liN 1 c++ qt qml blackberry-cascades
在C++文件中,我有一个类型的对象QList<QStringList>*
,它应该是一个二维String数组.
目前,在C++中我能够做到这一点:
// this will display the QString value in the Console,
// where entries is of type QList<QStringList>*
qDebug() << "test: " << entries->at(0).at(0);
Run Code Online (Sandbox Code Playgroud)
我知道如何将此对象公开给QML,但我如何能够在QML中导航/访问其功能?
在main.qml
,我可以调用返回此对象的函数:
_app.getCalendar()
Run Code Online (Sandbox Code Playgroud)
但是我如何导航它,就像上面的C++代码一样?
编辑:我实际需要做的是从C++发送二维字符串数组到QML.我是以一种过于复杂的方式做到这一点的吗?有没有其他方法来实现这一目标?
INVOKABLE
在您暴露给QML的类中定义一个getter函数.
标题:
class MyQmlClass : QObject
{
Q_OBJECT
public:
// ...
Q_INVOKABLE QString getString(int y, int y);
// ...
}
Run Code Online (Sandbox Code Playgroud)
并在.cpp文件中实现它广告如下:
QString MyQmlClass::getString(int x, int y)
{
return entries->at(x).at(y);
}
Run Code Online (Sandbox Code Playgroud)
最后在QML中:
_app.getCalendar().getString(3, 4)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
543 次 |
最近记录: |