![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
qml
哇风
欢迎大家一起来学习 c/c++ ,数据结构,嵌入式相关课程
交流qq群:499984459
展开
-
qml 播放音频
MediaPlayer是Qml提供否核心多媒体类,可以播放音频和视频。在pro文件中添加QT += multimedia,才可以使用MediaPlayer控件。代码如下import QtQuick 2.0import QtMultimedia 5.14Text { text: "Click Me!"; font.pointSize: 24; width: 150; height: 50; //设置音频 MediaPlayer { ...原创 2021-08-17 23:46:32 · 609 阅读 · 0 评论 -
QML程序打包、发布(windeployqt)
命令:windeployqt xxx.exe -qmldir C:\Qt\Qt5.9.6\5.9.6\mingw53_32\qml说明:“C:\Qt\Qt5.9.6\5.9.6\mingw53_32\qml”为Qt实际安装目录下的qml文件夹路径。msvc 版本改成对应的msvc环境原创 2020-07-29 20:41:52 · 480 阅读 · 0 评论 -
TextInput 学习笔记
TextInputTextInput 项目用来显示单行可编辑的纯文本。TextInput 是一个非常简单的项目,除了显示光标和文本外,默认并没有边框等装饰性效果,所以在使用时一般要为其添加一个可视化的外观。先来看一个例子:Window { visible: true width: 320 height: 240 Row { spacing: 10 anchors.centerIn: parent Text原创 2020-06-07 01:20:56 · 1795 阅读 · 0 评论 -
自定义qml控件的文件名首字母要大写
自定义qml控件的文件名首字母要大写原创 2020-06-07 00:27:31 · 304 阅读 · 0 评论 -
qml 学习 踩坑
ListModel 不能直接赋值 需要通过 append 进行赋值操作原创 2020-06-02 22:37:12 · 202 阅读 · 0 评论 -
qml学习笔记(三)
opacity是一个继承属性,也就是说,父项目的透明度也会应用到子项目上,大多数情况下,这会产生想要的结果。比如下面的代码会使红色和蓝色矩形块都透明,只想蓝色透明怎么办?把opacity:0.5属性挪到蓝色矩形框下即可。import QtQuick 2.2Item{Rectangle{opacity:0.5color:"red"width:100;height:100Rectangle{co...转载 2020-06-02 01:45:21 · 380 阅读 · 0 评论 -
qml 学习要点记录(2)
Qt.binding()的作用,动态创建新的绑定,就是向Qt.binding()传递一个函数来返回需要的结果。import QtQuick 2.0Item {width: 600height: 600Rectangle{width: 10;height: width * 2color: "red";anchors.centerIn: parent;focus: trueKeys.onSpacePressed:...转载 2020-06-02 01:37:43 · 461 阅读 · 0 评论 -
Qml学习要点记录(一)
基本类型的属性没有自己的属性改变信号,只能为基本类型自身创建一个属性改变信号处理器。例如:Text{//不可用onFont.pixelSizeChanged:doSomething()//不可用font{ onPixlSizeChanged:doSomething() }//可用onFontChanged: doSomething()}声明一个自定义的属性,会隐式地为该属性创建一个值改变信号,以及...转载 2020-06-02 01:26:14 · 162 阅读 · 0 评论 -
qml 与c++ 的数据交互 使用 json字符串 来交互 更好,更简单
qml 与c++ 的数据交互 使用 json字符串 来交互 更好,更简单1.c++ 中 通过qt 的 QJsonObject, QJsonArray, QJsonDocment 这一套,解析出json字符串给 qml2. qml 端 通过 :var obj = JSON.parse(jsonStr)获取到一个json对象 ,然后进行数据的提取访问...原创 2020-05-15 12:13:44 · 1291 阅读 · 0 评论 -
qml 让字体居中
如果让字体居中有两种方法:(1)创建一个rectangle,让text在rectangle中居中。Window { width: 400 height: 400 title: qsTr("Hello World") visible: true Rectangle{ anchors.centerIn: parent wi...原创 2020-04-28 15:47:59 · 2592 阅读 · 0 评论 -
qml Loader 的使用
ttp://blog.csdn.net/xiangzi_011/article/details/25488137qmlLoader是用来动态加载qmlcomponents的,这样就可以在你需要相应的component时才创建它。好处我就不说了。1.加载方式Loader可以通过两种方式来加载components,一种是通过source属性来加载一个qml文件(例子1...原创 2020-04-23 11:14:43 · 1162 阅读 · 0 评论 -
qml 输入框
基本概念这是一个很常用到的功能,特意记录下:一般输入框会用到2个,一个是TextInput一个是TextField。因为TextInput加Rectangle如果太长会出现一种问题,就是Text会输入到Rectangle外面。可以用TextField代替,也可以限制其长度!TextInput和TextField中都含有一个属性:maximumLength这个是运行的文...原创 2020-04-17 16:54:33 · 1875 阅读 · 0 评论 -
记录一个错误使用代码导致程序崩溃问题
先记录一笔后续补上 :大致是 c++ 继承QAbstractListModel 重写自定义model该model 内放入 一张表信息, 为 QList<Record> list 存储一张表的所有信息Record 为一张表的一条记录, 然后 model 中提供一个函数 Record * getRecord(int row)获取某一行的一条记录,此处错误将 成员里...原创 2020-04-11 17:03:34 · 403 阅读 · 0 评论 -
QList指针中的clear后不会自动释放内存,需要之前调用qDeleteAll()
QList<T> 的释放分两种情况:1.T的类型为非指针,这时候直接调用clear()方法就可以释放了,看如下测试代码#include <QtCore/QCoreApplication>#include <QList>#include <QString>int main(int argc, char *argv[]){ QCor...原创 2020-04-11 16:06:13 · 1086 阅读 · 0 评论 -
js sql 某个字段更新 json对象
例如要组织如上的字符串 UPDATE A SET cfg='{"A":{"B":"AS","C":"BS"}}'OBJA.cfg 为一个json对象var execStr = 'UPDATE A SET cfg='+'\''+OBJA.cfg+'\'';绿色部分为增加的两个'号 ...原创 2020-04-11 11:45:12 · 1157 阅读 · 0 评论 -
QML 之 real 数据保留小数点后两位
对real数据精度问题,调用 js的toFixed(n)方法。n代表小数点后n位。QML 支持js 实际我们解决的是js中保留两位小数的方法。所以应该查找“js数据保留小数点后两位”。举一个例子看看在QML中如何使用Window { property real test: 8.012312324234 visible: true width: 640 ...原创 2020-04-10 12:32:11 · 2023 阅读 · 1 评论 -
qml Tableview 使用 ,c++中取数据供界面显示
1.c++中组装一个表结构体赋值给Tableview的model具体方法如下:1.创建一个一条记录的数据表类2.创建一个model 继承QAbstractListModel3.main.cpp中将该model加入进qml,单类形式加入,一个model绑定一个tableviewAnimalModel model; model.addAnimal(Animal("Wolf", ...原创 2020-04-05 17:51:04 · 2081 阅读 · 0 评论 -
C++与QML文档之间传复杂数据结构(如结构体)
如有如下结构体:typedef struct{pid_t pid;char logical_name[AMS_MAX_APP_NAME_LEN];char full_name[AMS_MAX_APP_NAME_LEN];AMS_AppState_e state;int kbd_fd;}AMS_AppInfo_t;用C++封装一个类如下:class AppInfo...原创 2020-04-03 18:07:40 · 1369 阅读 · 0 评论 -
Qt:QML:ListView实现鼠标点击选中某项
简介ListView默认是没有自动点选选中某项的,毕竟Qt的ListView功能复杂而强大解决方法在鼠标点击某项时设置 idControl.ListView.view.currentIndex = index ;idControl代表自己实现的delegate的项的id,注意不是Component的id代码import QtQuick 2.0import QtQuick.Contro...原创 2020-04-03 11:19:59 · 1813 阅读 · 0 评论 -
qml----TableView
tableview与Listview相似,只不过是多了滚动条、挑选以及可调节尺寸等功能,它的数据也是通过Model来实现的,可以用listModel、XmlListModel或者c++中的AbstractItemModel和QAbstractTableModel等继承实现的model下面看一个简单的例子,代码如下: import QtQuick 2.0import QtQuic...原创 2020-04-03 06:51:45 · 1998 阅读 · 0 评论 -
qml的信号与槽
现有A界面中通过loader 加载B界面 ,A界面信号改变触发B界面函数调用例子 main.qml 及A 界面import QtQuick 2.12import QtQuick.Window 2.12import QtQuick.Controls 1.4Window { id: "aTest" visible: true ...原创 2020-04-01 16:18:12 · 168 阅读 · 0 评论 -
QML中使用LocalStorage 操作sqlite数据库
import QtQuick 2.5import QtQuick.Window 2.2import QtQuick.Controls 1.4//import QtQuick.LocalStorage 2.0Window { visible: true width: 640 height: 480 title: qsTr("Hello World")...原创 2020-04-01 14:12:22 · 858 阅读 · 0 评论 -
qrc:/main.qml:5 Invalid import qualifier ID QML 自定义部件无法导入
qrc:/main.qml:5 Invalid import qualifier IDQML 自定义部件无法导入大写字母的问题import "MyListView.js" as myList_js改写成如下即可import "MyListView.js" as MyList_Js同理在 QML 环境中 QML 文件的首字母必须是大写,这样才能够被 QML 应用//文件名My...原创 2020-04-01 10:03:28 · 402 阅读 · 0 评论 -
使用QML LocalStorage来存储我们的数据
在先前的样例中。我们能够“使用SQLite offline storage API来存储应用的设置”。我们也在例程“怎样在QML应用中动态改动ListModel中的数据并存储它为JSON格式”中展示怎样把我们须要的JSON存储到一个本地的文件里。在这篇文章中,我们将使用QtQuick所提供的LocalStorage来存储我们所须要的数据。为了说明问题,我首先来创建一个基于“QtQui...原创 2020-03-31 20:57:18 · 947 阅读 · 0 评论 -
qml对象属性
QML对象属性每一个QML对象类型都定义了一系列属性。每创建一个该对象类型的实例,该实例的这些属性也自动被创建了。接下来我们讨论几种不同类型的属性。id属性每一个QML对象类型都有一个唯一确定的id属性。这个属性是由QML语言自身提供的,并且在QML对象类型中不能被重定义和重载。我们必...原创 2020-03-31 20:00:21 · 657 阅读 · 0 评论 -
Qt播放视频报错 DirectShowPlayerService::doRender: Unresolved error code 0x80040266
没有插件报错:DirectShowPlayerService::doRender: Unresolved error code 0x80040266下载并安装 LAVFilters:https://github.com/Nevcairiel/LAVFilters/releasesinstaller方式直接按步骤安装压缩包方式解压右键以管理员运行 install_video.bat 文件...原创 2020-03-31 18:28:51 · 2643 阅读 · 0 评论 -
qml自定义界面(三) 带背景的编辑框
矩形和 textinput 结合而成 Rectangle{ x:30; y:80; width:100; height: 30; color:"lightgray"; border.color: "blue"; border.width: 2; ...原创 2020-02-03 19:52:31 · 598 阅读 · 0 评论 -
qml自定义界面定制(二)从左到右,icon加文本按钮
/* 从左到右,icon +文字的按钮*/import QtQuick 2.0Rectangle { height: 50; width: parent.width signal iconClicked(); signal iconEntered(); signal iconExited(); ...原创 2020-01-19 19:45:58 · 771 阅读 · 0 评论 -
qml自定义界面定制(一)统一风格的Dialog对话框
/*统一风格的dialog对话框*/import QtQuick 2.0import QtGraphicalEffects 1.0import QtQuick.Controls 2.0import QtQuick.Controls.Styles 1.4import QtQuick.Layouts 1.3Rectangle { z:...原创 2020-01-19 19:41:52 · 2405 阅读 · 0 评论 -
七。Qt Quick 中的锚(anchors)布局
布局绝对坐标: x,y,z,width,heightanchors定位器(Row,Column,Grid,Flow)布局管理器(GridLayout,RowLayout,ColumnLayout)原创 2020-01-17 01:19:17 · 986 阅读 · 0 评论 -
六:鼠标,按键事件
MouseAreaacceptedButtonsclickeddoubleClickedpressedreleasedMouseEvent,MouseArea{anchors.fill:parent;acceptedButtons:Qt.LeftButton|Qt.RightButton;onClicked:{if (mouse.button ==...原创 2020-01-17 01:02:46 · 109 阅读 · 0 评论 -
五.Qt quick 基本界面元素介绍
常见元素:Window/ApplicationWindowitemtextButtonImage例子: Image{ anchors.fill: parent; source: "http://img.xspic.com/img8/153/82/2445977_7.jpg"; fillMode: Ima...原创 2020-01-17 00:43:41 · 320 阅读 · 0 评论 -
一.QtQuick 简介
QtQuick 由 qml语言开发, QML = ECMAScript + Qt Object System快速浏览qml文档工具qmlsceneQtQuick 优势:QtQuick 适用于注重交互体验的应用快速地为移动和嵌入式设备创建流畅的交互体验基于OPenGL易于定制(styles)易于扩展(create new types && controls...原创 2020-01-04 04:48:10 · 583 阅读 · 0 评论 -
二一个基本qml程序讲解
ApplicationQCoreApplication (基础类 QtCore):QGuiApplication;(Qt Quick)QApplication;(QWidget)QQmlApplicationEngine;(qml context)main.cpp#include <QGuiApplication>#include <QQmlAp...原创 2019-12-22 03:49:15 · 229 阅读 · 0 评论 -
三.qml基本语法
一个qml文档由两部分组成1.import语句2.qml对象树qml 文档对象:Qt 对象:确定类型JS 对象:弱类型 var方法:原创 2019-12-22 04:07:50 · 208 阅读 · 0 评论 -
四: Qt quick 里面的信号与槽
信号与槽:信号: 1.信号,2.属性变化信号:信号处理器:槽1.on<Signal>2.on<Property>Changed属性变化的信号处理器: onWidthChanged: { txt.x = (win.width - txt.width) / 2; } onHe...原创 2019-12-22 04:34:52 · 134 阅读 · 0 评论 -
qml语言基础(一)
qml文件的后缀是。qml1.对象: 即c++中的类的实例2表达式:.即c++中的一条语句例如 :width:320;一个示例: Button{ text:"Quit"; style:ButtonStyle{ background:Rectangle{ implicitWidth: 70; implicitHeigh...原创 2019-12-22 03:23:39 · 265 阅读 · 0 评论 -
QML之使用Loader加载QML组件的一些问题
一.接收来自加载的qml发出的信号使用Connections元素可以接收到任何发送自加载组件的信号。main.qmlimport QtQuick 2.12import QtQuick.Window 2.12Window { visible: true property bool isFirst : false; widt...原创 2019-12-18 16:10:39 · 1131 阅读 · 0 评论 -
QML之使用Loader加载QML组件
QML的Loader元素经常备用来动态加载QML组件。可以使用source属性或者sourceComponent属性加载。这个元素最有用的地方是它能在qml组件需要的时候再创建,即延迟创建QML的时间。一.使用source组件加载qmlmain.qmlimport QtQuick 2.12import QtQuick.Window 2.12Window {...原创 2019-12-18 15:56:01 · 704 阅读 · 0 评论 -
NumberAnimation数字类动画
如下代码实现目标是一个小方块,从左边开始向右边滚动,最后变成一个球。 具体代码如下:import QtQuick 2.3import QtQuick.Window 2.2 Window { id:win visible: true width: 800 height: 600 Rectangle{ ...原创 2019-01-29 16:54:45 · 2359 阅读 · 0 评论