慧都网成开源UI开发框架QT中国区代理及QML中JavaScript相关应用

2025-06-26
来源:万象资讯

为开源用户界面开发框架QT提供商业组件的供应商,即我国地区的官方授权代理商——慧都网。

代码与QML的结合相当便捷,能够实现用户界面逻辑、命令式操作等功能。

对属性值使用 表达式

表达式可以在 QML 中用作绑定,例如:

Item { width: Math.random() height: width < 100 ? 100 : (width + 50) / 2 }

请注意,对于函数调用,例如Math函数,其结果不会因参数未变而重新计算。因此,当Math函数被绑定时,它将生成一个随机数且不会更新。然而,若宽度发生变动,与之绑定的高度将会重新计算,以适应这一变化。

在QML中添加函数

在QML项目中,您能够定义函数,例如,参照以下示例,这样您就能通过项目标识符来执行该函数。

import QtQuick Item { id: container width: 320 height: 480 function randomNumber() { return Math.random() * 360; }

小程序开发面板_Qt QML JavaScript 集成_ Qt 商用组件供应商

function getNumber() { 调用container对象中的randomNumber方法,并返回其生成的随机数。 } TapHandler { 本行代码应用了该物品中引用的JavaScript函数。 在调用时,将矩形对象的旋转角度设置为容器返回的数值。 } Rectangle { color: "#272822" width: 320 height: 480 } Rectangle { id: rectangle anchors.centerIn: parent width: 160 height: 160 color: "green"

小程序开发面板_ Qt 商用组件供应商_Qt QML JavaScript 集成

在轮换过程中,执行{顺时针方向的轮换动画}动作。 } }

使用 文件

文件能够帮助从QML文件中提取逻辑结构。为了实现这一目的,您需要先将您的函数代码存入一个.js文件中,具体操作可参照示例进行。

// myscript.js 定义一个函数,名为getRandom,该函数接受一个参数,即前一个值。 执行计算,将前一个值与随机生成的0到90之间的数相加,然后取整至最接近的整数,最后将结果对360取模。 }

接着,将该文件引入至所有需调用这些函数的 .qml 文件里,比如下述的示例 QML 文件所示。

import QtQuick import "myscript.js" as Logic Item { width: 320 height: 480 Rectangle { color: "#272822" width: 320 height: 480 } TapHandler {

 Qt 商用组件供应商_小程序开发面板_Qt QML JavaScript 集成

此行调用的是来自独立JS文件的JavaScript函数。 当被激活时,矩形的旋转角度被设置为逻辑函数根据当前旋转角度生成的随机值。 } Rectangle { id: rectangle anchors.centerIn: parent width: 160 height: 160 color: "green" Behavior on rotation { RotationAnimation { direction: RotationAnimation.Clockwise } } } }

Qt商用组件推荐

分享