QT 学习
学习QT的笔记
momo0303kaka
这个作者很懒,什么都没留下…
展开
-
C++关于循环依赖的问题
循环依赖,解耦合原创 2022-10-12 19:40:53 · 1766 阅读 · 0 评论 -
qml 引擎(V8)原理总结
关于qml引擎原理,要从google V8入手,开始使用qml的时候会对它的语法感到不解,虽然是javascript语言,但总是对各种操作感到困惑,尤其是与后台c++的交互,为什么需要做类型注册、对象注册,直到最近做的一些技术调查后,才感觉明朗了。v8一般都在各类浏览器中使用,例如chrome,google开源一套实现处理javsscript脚本语言的V8库,会针对javascript语法进行解析,提取出脚本中的AST对象树,而qml脚本就是javascript语法,而qml引擎就是基于V4、V8实现.原创 2020-10-23 11:32:50 · 2948 阅读 · 0 评论 -
读开源QScada框架HmiFuncDesigner-master的笔记
之前无意中开到了这个开源项目,下载下来后一直没时间整理思路。昨天用了几个小时捋顺了一下基本框架,希望有助于大家读他的代码。整体设计上还是很有技巧的,创建者最初的Qscada未来的样子跟我想象的也差不多唯一不同的是,我觉得历史库可以选择时序数据库可能更好一些。工程HmiFuncDesigner 用来做整个scade工程配置、画面的管理工具,这部分画面设计器可以深入研究一下,没来得及细琢磨...原创 2020-01-17 14:26:59 · 10102 阅读 · 0 评论 -
Qt Designer自定义控件创建、使用
Qt Designer自定义控件创建、使用如何创建一个自定义的QWidget控件并导入Qt Designer 中进行使用?一、创建Qt Designer自定义控件第一步: 创建Qt Designer自定义控件工程打开Qt Creator,创建一个Qt 设计师自定义控件。根据向导创建控件工程,并填写控件类名称、说明、以及docxml默认添加的属性信息Qt Designer自定义控件...原创 2019-10-12 16:10:29 · 10954 阅读 · 1 评论 -
qml基础控件QQuickItem,都可以用c++来实现图形绘制
介绍得非常详细,大部分的qml图像元素都是用c++先实现绘制,然后导入qml中,查看qt的一些源码就能发现。https://blog.csdn.net/foruok/article/details/41152297转载 2019-07-24 10:54:37 · 4784 阅读 · 0 评论 -
qml 皮肤(三)添加自定义的控件库和Palette(qgroundcontrol)
这两天一直研究qml皮肤,发现qgroundcontrol这个开源项目里的挺好用。可以借鉴一下QGCPalette的实现方式。qgroundcontrol中所有的qml页面都是使用自定义的GQC控件库具体如下:在QGroundControl里资源文件中,添加QGroundControl.Controls模块,将自定义的控件全部放入controls目录Controls目录的qmldir...原创 2018-09-30 18:17:42 · 2631 阅读 · 1 评论 -
qml 皮肤(二)使用Customizing方式
像上一篇文章qml 皮肤(一)使用系统自带的Style中那样,使用系统的style对于界面设计的不是很复杂的项目,使用起来也还行,一旦出现比较特殊的控件颜色、尺寸可以显式的设置一下,也能满足需求。就是总觉得太麻烦了。还是需要自定义一套自己皮肤,供整个工程使用的。查了一下Qt 的帮助文档,其中Customizing Qt Quick Controls 2 提示的方法还是不错的。简单整理一下,就...原创 2018-09-30 16:43:27 · 1127 阅读 · 0 评论 -
qml 皮肤(一)使用系统自带的Style
之前使用qml的时候总是觉得界面风格设置特别费劲,最近查了一下文档,感觉Qt Quick Controls 2里设置的方法还是不错的。1.Qt Quick Controls 2 自带一系列的style,如下图所示:Default Style、Material Style、Universal Style2.配置方法qml 里添加: (对应版本可以自行查询文档,Qt5.9是2.2版本)...原创 2018-09-30 12:18:40 · 7802 阅读 · 1 评论 -
Qt 启动一个外部进程
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow){ ui->setupUi(this); process =new QProcess(this); process->start("D:/test.exe"); if...原创 2018-05-25 09:07:00 · 5225 阅读 · 0 评论 -
qml中弹出window,并移动一个控件到子窗口
主要思路就是,先添加一个window隐藏显示,等需要弹出时显示,并将需要移动的Item的父类更改为子窗口main.qml import QtQuick 2.6Rectangle { property alias mouseArea: mouseArea property alias textEdit: textEdit width: 360 h原创 2018-05-09 10:30:56 · 3611 阅读 · 0 评论