我正在使用新版本的 Blackberry (Blackberry 10) 。我正在尝试将 c++ 代码与 QML 集成,但我遇到了一些我认为与其他 . 在.h 文件Q_OBJECT 中,Q_PROPERTY 信号和槽显示存在语法错误。在我尝试使用这种类型的 QML 文件中(例如,导入 CustomTimer 1.0)我遇到了这个问题 module "CustomTimer" is not installed 。这个问题怎么解决???
4 回答
I'm using QNX Momentics Version 10.1.0
I resolved my errors by right-clicking on my project folder, then selecting Configure -> Add Library...
, and then choose Standard BlackBerry Platform Library. Choose the relevant library to include and click Finish
.
For QObject
, I found it under Platform > Qt Core
我用以下方式纠正了这个问题:
- 在 Project Explorer 中右键单击您的项目。
- 转到索引。
- 单击重建。
这对我有用:
我右键单击我的项目,并在下拉菜单中选择:
Index > Re-resolve Unresolved Includes
Index > Rebuild
(使用 Momentics 2.1.1)
对于您在 QNX Momentics 中报告的 Q_OBJECT 宏和其他 Qt 宏的语法错误,这些错误在更新到最新的 Momentics 和 SDK 版本后对我来说消失了。但是,仍有一些其他人似乎有此问题,并且一些解决方法已发布在 Blackberry 开发人员支持论坛中:
对于 QML 文件中的错误,我认为您在 QML 预览中遇到了一个已知限制,用于从 C++ 注册并导入 QML 的自定义组件。QML 预览只了解如何显示核心 Cascades 组件。这不应影响您的代码在模拟器或实际设备上的运行方式。
看:
https://developer.blackberry.com/cascades/download/releasenotes/
在“已知限制”下:
带有 C++ 对象的 QML 预览 QML 预览可以加载和渲染仅基于 Cascades 插件的组件(在 bb.cascades 1.0 中)。QML 预览不理解在您的项目中以 C++ 注册的对象,并且无法加载和呈现。
在某些情况下,为了查看 QML 文档其余部分的预览,作为一种解决方法,您可以import MyLibrary 1.0
在使用 QML 预览时将其注释掉。但是在某些情况下,这可能意味着注释掉一半的文档。对于非常基本的 QML 布局,通常在初始设计阶段之后,我发现构建和启动我的应用程序以查看实际工作的 QML UI 更有效。