Qt 之 QtScript】的更多相关文章

C++和JavaScript相互通信.今天就学习QtScript模块吧. Qt 包含完全集成的 ECMA 标准脚本引擎.Qt Script 集成了 QObject,为脚本提供了 Qt 的信号与槽 (Signals & Slots) 机制,可在 C++ 和脚本之间进行集成. 脚本支持可使开发事半功倍,QtScript提供脚本错误报告,用户可用自己的脚本跟踪程序缺陷. 下面是一个简单的hello程序. //main.cpp #include <QtGui/QApplication> #in…
前言 前面学习中,很多地方都用到了C++和JavaScript相互通信.今天就学习QtScript模块吧. Qt 包含完全集成的 ECMA 标准脚本引擎.Qt Script 集成了 QObject,为脚本提供了 Qt 的信号与槽 (Signals & Slots) 机制,可在 C++ 和脚本之间进行集成. 脚本支持可使开发事半功倍,QtScript提供脚本错误报告,用户可用自己的脚本跟踪程序缺陷. 代码 简单代码 QScriptEngine类为程序提供一个嵌入式脚本环境.一个应用程序中可以添加多…
Qt不错的学习网址: http://www.cnblogs.com/findumars/p/5529526.html ---------------------------------------------------- IE内核,qt调用js:qt写com组件,html就可以调用qt 可以百度 QAxBindable  会搜索到比较有用的文章 http://blog.csdn.net/csxiaoshui/article/details/47333989 http://blog.csdn.n…
由于 Qt 集成了大量成熟模块,使之成为 C++ 领域中最好用的开源技术跨平台 GUI 开发框架.基于 Qt 能开发 Windows MacOS 传统桌面或无 GUI 应用程序.Unix/Linux 平台应用程序.嵌入式应用程序.移动端应用程序.等.目前,Qt5 Qt6 采用 LGPL 商业双许可协议,支持 Microsoft Windows.GNU/Linux.Mac OS X.Android.iOS.WinCE.UNIX 家族等平台.想从零开发自已的 C++ 应用,若是大工程则需要很多年才能…
JavaScript是一个强大面向对象语言,它有很多快速高效的解释器.官方JavaScript标准定义的API是为了构建基于浏览器的应用程序.然而,并没有定于一个用于更广泛的应用程序的标准库. CommonJS API定义很多普通应用程序(主要指非浏览器的应用)使用的API,从而填补了这个空白.它的终极目标是提供一个类似Python,Ruby和Java标准库.这样的话,开发者可以使用CommonJS API编写应用程序,然后这些应用可以运行在不同的JavaScript解释器和不同的主机环境中.在…
需求是这样的: 需要给一个硬件接口测试些东西,用js来调用,js做成不同的独立模块分别测试不同的硬件接口,包括DMD内存,PCIE带宽等等.需要用一个exe来载入这些js文件分别调用测试模块.exe用Qt来做.就只能用QtScript模块了么. QtScript是一个解释脚本的引擎 符合EMCAScript标准. void test_js::ExecuteJsFile(){ QScriptEngine engine; if(JsFilePath.isEmpty()){ qDebug() <<…
本篇说一下Qt对于脚本的支持, 即QtScript模块. Qt支持的脚本基于ECMAScript脚本语言, 这个东西又是javascript, jscript的基础. 所以, 一般只要学过javascript就基本会写Qt脚本了. 自此开始, Qt脚本现在就叫javascript.    不过作为土人, javascript中有一个prototype的概念, 现在才知道. javascript本没有类的概念, 跟不用说是继承之类的了. 但是凭借prototype的特性, 我们可以实现类似C++中…
最近需要做一个项目 在arm 架构的linux下 没有桌面环境的情况下拉起 有界面的浏览器使用. 考虑用qt 的界面和 qtwebikt 的库去实现这一系列操作. 本文参考: Qt移植到ARM Linux教程:http://www.veryarm.com/930.html 成功移植qt软键盘和输入法到arm开发板的qt程序中:http://www.csdn1 2 3.com/html/mycsdn20140110/d1/d1ecf8c322c9447b049f2a71d12f5e87.html…
qmake 之 CONFIG 与 QT 乱谈 看qtcn论坛中经常有人忘记 QT+=network 等语句.随便写写吧,或许对他人有帮助. 写来写去,发现越写越乱,就这样吧,反正主要的内容很简单. dbzhang800 20101116 从哪儿开始呢? 不妨先看个例子吧: #include <QtCore/QCoreApplication>#include <QtCore/QDebug>int main(int argc, char** argv){QCoreApplication…
一.Qt与Qt Creator简介        Qt是一个跨平台应用程序和 UI 开发框架.使用 Qt 您只需一次性开发应用程序,无须重新编写源代码,便可跨不同桌面和嵌入式操作系统部署这些应用程序.        Qt Creator 是全新的跨平台Qt IDE,可单独使用,也可与 Qt 库和开发工具组成 一套完整的SDK. 其中包括:高级 C++ 代码编辑器,项目和生成管理工具,集成的上下文相关的帮助系统,图形化调试器,代码管理和浏览工具. 二.Qt功能与特性 直观的 C++ 类库:模块化…
编译环境 CentOS 64位 Desktop 版本:6.5 编译前的准备: CentOS的用户默认没有root权限,如果当前用户没有权限root,则可以在终端里面执行下面的命令: su root sudo sed -i '/root\tALL=(ALL)/a *自己的用户名*\tALL=(ALL)\tALL' /etc/sudoers exit 需要替换自己的用户名 安装git sudo yum install git 安装开发工具 sudo yum groupinstall "Develop…
什么是Qt Qt是一个针对桌面.嵌入式.移动设备的一个跨平台的应用程序开发框架,支持的平台包括Linux.OS X.Windows.VxWorks.QNX.Android.iOS.BlackBerry(黑莓).Sailfish OS(旗鱼操作系统)等. Qt 1991年由Trolltech-奇趣科技(成立于1994年)开发,2008年,Trolltech被Nokia收购,2012年,Qt被Digia收购. Qt是基于C++编写的框架,它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工…
旧项目运行在Qt4.x上,要加上一个脚本逻辑,只能上Qt Script.(建议新项目使用QJSEngine) QT += script #include <QtScript> int cpp_func(int a, int b) { return a + b; } QScriptValue cpp_func_wrapper(QScriptContext *ctx, QScriptEngine *eng) { int a = ctx->argument(0).toInt32(); int…
什么是Qt Qt是一个针对桌面.嵌入式.移动设备的一个跨平台的应用程序开发框架,支持的平台包括Linux.OS X.Windows.VxWorks.QNX.Android.iOS.BlackBerry(黑莓).Sailfish OS(旗鱼操作系统)等. Qt 1991年由Trolltech-奇趣科技(成立于1994年)开发,2008年,Trolltech被Nokia收购,2012年,Qt被Digia收购. Qt是基于C++编写的框架,它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工…
发展史 Qt的第一个商业版本于1995年推出,随后Qt的发展就很快了,下面是Qt发展史上的一 些里程碑,从之前的Qt1.x开始到现在的Qt5.x. Qt1-3 版本 发布日期 1.40 10 July 1998 1.41 2 October 1998 1.42 19 December 1998 1.44 13 March 1999 2.0 26 June 1999 2.1 13 April 2000 2.2 7 December 2000 2.3 8 March 2001 3.0 16 Octo…
第二章 Qt常用工具的介绍 (1)No.1 qmake 相信编写过Makefile的开发人员,随着工程中源码的级数递增和以类型.功能.模块组织源码的子目录的增多,都不愿意重复机械地手工编写这个工程管理文件.手写Makefile比较困难也容易出错.还没有编写过Makefile,甚至还不知道Makefile为何物的开发人员,也不用为此烦心,qmake可以方便地基于一个工程文件,生成不同平台下的Makefile.qmake关注编译器和处理器平台的依赖性,开发人员不用再手写针对不同编译器和不同处理器平台…
Qt 5 与 Qt 4 最大的一个区别之一是底层架构有了修改.Qt 5 引入了模块化的概念,将众多功能细分到几个模块之中.Qt 4 也有模块的概念,但是是一种很粗的划分,而 Qt 5 则更加细化.本节主要对 Qt 5 的模块进行一个简单的介绍,以便以后大家需要哪些功能的时候知道到哪个模块去寻找. Qt 5 模块分为 Essentials Modules 和 Add-on Modules 两部分.前者是基础模块,在所有平台上都可用:后者是扩展模块,建立在基础模块的基础之上,在能够运行 Qt 的平台…
附录C Qt资源 C.1 Qt 官方资源 全 球各大公司以及独立开发人员每天都在加入 Qt 的开发社区.他们已经认识到了Qt 的架构本身便可加快应用程序开发进度.这些开发人员,无论是想开发单平台软件.还是想开发跨平台软件,都可从 Qt 统一而直接的 API.强大的构建系统以及各种支持工具(例如 Qt Designer)中受益无穷. Qt具有一个极具活力并十分有益的用户社区,用 户可以通过以下方式进行沟通:qt-interest 邮件列表.Qt Centre 网站(网址为:www.qtcentre…
本文转载自:http://blog.sina.com.cn/s/blog_671732440100uwxh.html 使用qtscipt库解析json数组首先在工程文件中加 QT        += script 然后头文件加 #include <QtScript> 然后解析 QString str = "{\"name\":\"xiaotang\", \"age\":\"23\", \"chi…
背景 最近在学QML,感觉也不难,就是一直以来接触 Qt 的脚本类的东西的顺序是Script.Quick1.Declarative.Quick2.QML.那么每一个都是干什么的呢,这些东西搞的我有点混乱,所以决定把他们的大概都先弄清楚,以便更好地学习. 历史 先去扒一下它们的历史. QtScript 从 Qt 4.3 开始引入.Qt Quick1 从 Qt 4.7 开始引入.Qt Quick1 包含 Qt Declarative 模块.QML.Qt Quick1.1 从 Qt 4.8 开始引入.…
QT概述 基于C++的GUI开发框架,跨平台.Qt 是一个用于桌面系统和嵌入式开发的跨平台应用程序框架. QT是挪威TROLLTECH公司开发的跨平台C++工具,在UNIX下非常出名:他的宗旨是“一次编码到处编译”与JAVA的“一次编译到处运行”有着本质的区别,作为跨平台开发工具,他的运行速度非常的快(因为他不需要虚拟机的支持),开发的GUI非常漂亮(有人认为比VISUAL C++强的多,而且简单). QT技术特点 面向对象:Qt 的良好封装机制使得 Qt 的模块化程度非常高,可重用性较好,对于…
http://blog.qt.io/blog/2015/05/26/qt-4-8-7-released/ Qt 4.8.7 is a bug-fix release. It maintains both forward and backward compatibility (source and binary) with Qt 4.8.0, 4.8.1, 4.8.2, 4.8.3, 4.8.4, 4.8.5, and 4.8.6 For more details, refer to the on…
(internationalization and localization) 旨在使应用程序适用于不同的语言, 不同的区域文化, 不同目标市场的技术需求. internationalization 是指程序可以在不改变设计的前提下适用于多种语言和地区: localization 是指让针对全球的程序通过添加特定的区域化组件(如日期.时间和数字格式)和翻译文字来应用于特定的地区. internationalization 在一些案例中国际化可能是非常简单的, 比如把一个 美语版的程序翻译为澳大利…
首先得在pro文件中加入QT+=script 然后导入相应的头文件 include <QStringList> #include <QtScript/QScriptEngine> #include <QtScript/QScriptValue> #include <QtScript/QScriptValueIterator> 接下来便可使用相应的API了 示例代码: QString strJson = "{ \"student\"…
Qt提供了对Javascript的良好支持, 如果查阅过文档你就知道Qt有两个不同的Js封装引擎: QScriptEngine QJSEngine QScriptEngine出现的比较早(自Qt4.3始),基于WebKit的JavaScriptCore引擎,提供的api相对来说比较丰富,但是已经被官方标注为deprecated:QJSEngine则是从Qt5.0开始提供,基于谷歌的V8引擎,是官方建议使用的版本.至于为什么QScriptEngine会被Qt废弃,各种原因就比较复杂了,有兴趣的朋友…
最近需要做一个项目 在arm 架构的linux下 没有桌面环境的情况下拉起 有界面的浏览器使用. 考虑用qt 的界面和 qtwebikt 的库去实现这一系列操作. 本文参考: Qt移植到ARM Linux教程:http://www.veryarm.com/930.html 成功移植qt软键盘和输入法到arm开发板的qt程序中:http://www.csdn1 2 3.com/html/mycsdn20140110/d1/d1ecf8c322c9447b049f2a71d12f5e87.html…
QT│  ├─ActiveQt│  │  ActiveQt│  │  ActiveQtDepends│  │  ActiveQtVersion│  │  QAxAggregated│  │  QAxBase│  │  QAxBindable│  │  QAxFactory│  │  QAxObject│  │  QAxScript│  │  QAxScriptEngine│  │  QAxScriptManager│  │  QAxSelect│  │  QAxWidget│  │  │  └─…
目录 Qt Installer Framework 使用说明 1.Qt Installer Framework概述 选择安装包类型 促进更新 提供安装内容 2.入门指南 支持的平台 从源代码构建 支持的编译器 配置Qt 设置Qt安装程序框架 3.最终用户工作流程 初次安装 启动安装程序 选择目标目录 选择组件 接受许可协议 选择Windows程序组 安装组件 添加组件 启动程序包管理器 选择其他组件 安装所选组件 移除组件 删除所有组件 删除所选组件 更新组件 启动更新程序 选择要更新的组件 更…
1.Qt框架图: 2.Qt模块组成 通用软件开发模块 QtCore 核心非图形接口类,为其他模块所调用 QtGui GUI(图形用户接口)功能模块 QtMultimedia 提供低级多媒体功能支持的类 QtNetwork 提供对网络编程支持的功能类 QtOpenGL 提供对OpenGL支持的功能类 QtOpenVG 提供对OpenVG支持的功能类 QtScript 提供使应用程序脚本化的工具类 QtScriptTools 为使用Qt Scripts的应用程序提供附加功能的类 QtSql 提供使用…
Qt 5 与 Qt 4 最大的一个区别之一是底层架构有了修改.Qt 5 引入了模块化的概念,将众多功能细分到几个模块之中.Qt 4 也有模块的概念,但是是一种很粗的划分,而 Qt 5 则更加细化.本节主要对 Qt 5 的模块进行一个简单的介绍,以便以后大家需要哪些功能的时候知道到哪个模块去寻找. Qt 5 模块分为 Essentials Modules 和 Add-on Modules 两部分.前者是基础模块,在所有平台上都可用:后者是扩展模块,建立在基础模块的基础之上,在能够运行 Qt 的平台…