步骤
- 定义新的类,继承自QObject
- 在类声明中定义public方法,函数定义之前加上Q_INVOKABLE关键字
- 按正常的方法写出类的实现
- 在main文件中包含该类,并加入QQmlEngine和QQmlContext等文件
- 使用智能指针QScopedPointer实例化类
- 使用engine.rootContext的setContextProperty方法将智能指针加入进应用程序中
- 在QML文件中直接调用函数即可
代码:
类头文件
class Voronoi : public QObject
{
Q_OBJECT
public:
explicit Voronoi(QObject *parent = nullptr);
Q_INVOKABLE void test();
Q_INVOKABLE double add(double x, double y);