11. QML文件中调用JS文件步骤

本文详细介绍了在QML中如何调用JavaScript文件的步骤,包括添加资源前缀、导入JS文件、使用内部函数,并提供了一个小案例,演示了通过JS函数动态改变矩形颜色的实现过程。
摘要由CSDN通过智能技术生成
1.第一步:添加新的资源前缀

右键资源文件夹qml.qrc,选择使用“资源编辑器”打开,如下图所示:
在这里插入图片描述

2.第二步:添加 .js 文件

打开后在右侧出现编辑界面,新添加一个前缀 script (可随意命名),此前缀类似于一个文件夹,后续可以将所有的 JS 文件都加入到这个前缀文件夹中,选择添加文件,将自己创建的 .js 文件加入进来即可,如下图所示:
在这里插入图片描述

3.第三步:使用 .js 文件内部函数

经过第一第二步之后,左侧项目树中会出现如下目录:
在这里插入图片描述
在 .qml 文件中使用时需要 import 文件,也可以使用 as 语法为其起一个别名:
在这里插入图片描述
使用时通过 TestJS 即可调用里面的函数:


                
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Qt QML是一种基于JavaScript的声明式语言,用于快速构建跨平台的用户界面。它有时需要与C++代码交互,因为C++可以提供更高性能和更底层的功能。 要在Qt QML调用C函数,需要进行以下步骤: 1. 创建一个继承自QObject的C++类,并在其定义所需的函数。这些函数需要使用Q_INVOKABLE宏进行标记,以便在QML调用。 ```cpp // MyFunctions.h #include <QObject> class MyFunctions: public QObject { Q_OBJECT public: explicit MyFunctions(QObject *parent = nullptr); Q_INVOKABLE void myFunction(); }; ``` 2. 在QML文件导入C++类,并使用其实例调用函数。 ```qml import MyFunctions 1.0 Window { // ... Button { text: "调用C函数" onClicked: { MyFunctions.myFunction(); } } // ... } ``` 3. 在C++代码将该类注册到QML引擎。 ```cpp // main.cpp #include <QGuiApplication> #include <QQmlApplicationEngine> #include "MyFunctions.h" int main(int argc, char *argv[]) { QGuiApplication app(argc, argv); qmlRegisterType<MyFunctions>("MyFunctions", 1, 0, "MyFunctions"); QQmlApplicationEngine engine; engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); return app.exec(); } ``` 通过以上步骤,就可以在Qt QML成功调用C函数了。在按钮点击事件调用C++类的函数,可以在C++代码执行所需的操作,并将结果返回到QML界面进行展示。这种方式可以实现Qt QML框架与C++高性能功能的结合,使得开发者能够更好地发挥Qt的优秀特性和灵活性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

山间点烟雨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值