当前位置: 首页 > news >正文

重庆企业官网建站快速搭建鞍山网站建设联系方式

重庆企业官网建站快速搭建,鞍山网站建设联系方式,中国传媒大学声明,工业设计和产品设计哪个好简介 在 QML 中,将 JavaScript 字符串转换为函数通常涉及使用 Function 构造函数或 eval() 函数。但是,QML 的环境对 JavaScript 的支持有一定的限制,因此不是所有的 JavaScript 功能都可以在 QML 中直接使用。 以下介绍都是在Qt5.12.1…

  简介     

        在 QML 中,将 JavaScript 字符串转换为函数通常涉及使用 Function 构造函数或 eval() 函数。但是,QML 的环境对 JavaScript 的支持有一定的限制,因此不是所有的 JavaScript 功能都可以在 QML 中直接使用。 

        以下介绍都是在Qt5.12.12环境下进行的。

1、qml中使用 Function 构造函数:

在标准的 JavaScript 中,你可以使用 Function 构造函数来从字符串创建函数,如下所示:

var funcString = "return x + y";
var func = new Function('x', 'y', funcString);
console.log(func(1, 2));  // 输出 3
 

2、qml中使用 eval()函数:

eval() 函数可以执行 JavaScript 代码字符串。例如:

var funcString = "function add(x, y) { return x + y; }";
eval(funcString);
console.log(add(1, 2));  // 输出 3

3、qt的C++中使用 QJSEngine

QJSEngine myEngine;
QJSValue fun = myEngine.evaluate("(function(a, b) { return a + b; })");
QJSValueList args;
args << 1 << 2;
QJSValue threeAgain = fun.call(args);
int result = threeAgain.toInt();

qml示例

main.qml

import QtQuick 2.12
import QtQuick.Window 2.12
import QtQuick.Controls 2.5
import QtQml 2.12Window {width: 1200height: 800visible: truetitle: qsTr("Hello World")objectName: "mainWindow"Rectangle{width: 800height: 300anchors.left: parent.leftanchors.top: parent.topborder.color: "blue"border.width: 1Rectangle {id : funcRectswidth: 700height: 200color: "lightgrey"border.color: "grey"anchors.verticalCenter: parent.verticalCenterTextArea {id: functionTextanchors.fill: parentwrapMode:TextEdit.WrapAnywhereanchors.margins: 2font.pointSize: 15focus: trueclip: truetext: "function  add(x){return x+100;}"selectByMouse: true}}Rectangle {id : funcRects1width: 500height: 50color: "lightgrey"border.color: "grey"anchors.left: funcRects.leftanchors.top: funcRects.bottomRow{Label {id: inputKeytext: qsTr("输入")font.pointSize: 15}TextInput {id: inputParamwidth: 100height: 30anchors.margins: 2font.pointSize: 15focus: trueclip: truetext: "120"selectByMouse: true}Button{text: "转换"onClicked: {var funcString = functionText.text;eval(funcString);var result = add(inputParam.text);console.log(result);onputParam.text = result;}}Label {id: onputKeytext: qsTr("输出")font.pointSize: 15}TextInput {id: onputParamwidth: 100height: 30anchors.margins: 2font.pointSize: 15focus: trueclip: truetext: ""selectByMouse: true}}}}
}

运行结果:

结果1:

输入的 inputParam.text 都按照字符串处理,所以输出结果是 120100

结果2:

   

输入的 inputParam.text 字符串在程序里面转换为int,所以输出结果是 220

http://www.yayakq.cn/news/872353/

相关文章:

  • 百度网站排名 查询怎么自己制作一个网站的书源
  • 微信商城网站怎么做娄底市城乡建设局网站
  • 做市级网站需要什么意思自助建站平台有哪些
  • 音乐影视类网站建设拜年视频制作软件
  • 在线设计平台的销售网站建设代码优化
  • 电视盒子做网站服务器做编辑器的网站
  • 韩城市网站建设局电话营销型网站管理系统
  • 公司官网站怎么搞wordpress 表单 采集
  • 建湖做网站的价格备案成功后怎么建设网站
  • 建站公司外包自己做的手机网站怎么加入小程序
  • 东莞企业网站推广怎么做建设网站用什么代码写好呢
  • 江苏省网架公司seo教程pdf
  • 网上商城网站建设规划一定要知道的网站
  • 成都网站建设cdxwcx软文广告文案案例
  • 常见网站开发的语言宣城市住房和城乡建设局网站
  • 网站后台shopadmin输在哪里网页设计教程免费网站
  • 深圳专业做网站案例公司建设内容是什么
  • dedecms win8风格网站模板简单学生的网页代码
  • 买个域名后怎么做网站免费空间试用
  • 企业做网站要注意些什么青岛房产网新楼盘
  • 深圳外包企业网站八冶建设集团有限公司网站
  • 宜兴做网站哪家好云网站
  • 公司建站花费三网合一网站建设全包费用
  • 建设局网站建设方案书用wordpress教程视频
  • 如何在网上做网站推广网站分页效果
  • 广州市做网站的wordpress 主题不显示图片
  • 怎样做网站发布信息如何更改网站标题
  • 微网站开发用什么技术seo网站推广杭州
  • 嘉定做网站的网页制造与网站建设论文
  • 顺德购物网站建设Wordpress主题 程序员