QML
qml学习笔记
我是黄同学
这个作者很懒,什么都没留下…
展开
-
QML笔记(十)之QML获取当前时间戳
一.前言楼主在学习过程中,喜欢打印一些信息,然后都会记录打印的时间,一开始用QML,都不知道怎么获取当前的时间戳,于是记录分享一下二.获取方式1.QML方式 console.log(Qt.formatDateTime(new Date(),"yyyy-MM-dd HH:mm:ss.zzz"))2.js方式(QML调用) function getTime() { return new Date().toISOString(); }3.Qt获取(QML调用原创 2022-05-18 23:09:07 · 2865 阅读 · 0 评论 -
QML笔记(九)之QML调用C++(1)
一.前言楼主在学习QML过程中,发码QML是可以调用C++,但是形式好像是很多,楼主一开始也没有搞懂很多,先记录分享最简单的调用例子,后续再由浅入深二.调用过程1.新建c++类2.编写简单的,这样函数声明前要加Q_INVOKABLE ,或者声明为public slots,不然会无法调用#ifndef MYOBJECT_H#define MYOBJECT_H#include <QObject>class MyObject : public QObject{ Q_OB原创 2022-05-16 23:16:20 · 418 阅读 · 0 评论 -
QML笔记(八)之.pragma library
一.前言楼主在学习QML调用js过程中,用Qt新建了一个js文件,在其中发现了头部.pragma library这个,一开始没在意这个,后续尝试注释了一下,发现了不一样效果,于是做个记录二.区别1.文字描述不加.pragma library:js文件可以直接访问qml中的控件id,从而对控件属性进行操作加.pragma library:js函数无法直接使用控件id,只能在qml调用函数的的时候将id作为参数传入,从而进行操作控件属性2.代码体现2.1不加.pragma library//.p原创 2022-05-13 09:56:32 · 662 阅读 · 0 评论 -
QML笔记(七)之QML调用js
一.前言在学习QML的过程中,楼主总感觉QML和JS更为洽和,有一种QML的壳,JS是内在的感觉,即是QML负责界面,js负责逻辑,于是就记录一下QML调用js的方式二.调用举例先构建一个测试界面,通过按钮来触发调用1.调用当前qml中的js函数1.1编写js函数2.调用逻辑 Button{ id:btn_1 text: "调用当前中的js函数" font.family: "微软雅黑"原创 2022-05-12 14:15:07 · 2158 阅读 · 0 评论 -
QML笔记(六)之QML自定义信号的创建与使用
一.前言信号槽是Qt的核心所在,不管是对于QtWidgets还是QML都是,连接自带的信号槽很容易就就比较容易,但有时候自带的信号槽不能满足我们的业务需要,于是就需要自定义信号,在需要的时候扔出,然后处理。自定义信号的使用场景一般都是组件和主页的通信,组件扔出信号,主页处理对应的业务逻辑,楼主该文章主要涉及自定义信号的使用,对于自定义组件不做陈述二.自定义信号的使用整体思路:创建信号->根据需要扔出信号->连接信号->绑定槽函数进行处理1.新建一个myText.qml,用sign原创 2022-05-11 16:31:53 · 3505 阅读 · 0 评论 -
QML笔记(五)之QML键盘事件
一.前言上篇文章了解了QML的鼠标事件的获取,这篇文章就记录一下获取QML的键盘事件二.键盘事件需要用一个Rectangle转起来,然后必须设施这两个属性 Keys.enabled: true // 不设置按键使能,获取不了按键事件 focus: true // 不设置焦点,获取不了键盘事件1.通用键盘事件Keys.onPressed,可以监测键盘上任意按键的按下,并获取对应的信息,注意event.text只能打印出数字和字母以及部分字符Keys原创 2022-05-10 17:53:48 · 2546 阅读 · 0 评论 -
QML笔记(四)之QML鼠标事件
一.前言QML的鼠标事件与QtWidgets有些许不同,楼主在学习过程中也感受到了,于是做个记录与分享二.事件分类1.怎么才能捕获鼠标事件呢。QtWidget中就是直接重写鼠标事件接口就可以了,在QML应该怎么去表示呢答曰:QML提供了MouseArea这个来捕获鼠标事件,注意,这个不能单独使用,需要用一个Rectangle装起来,这样就可以获取指定区域内的鼠标事件了Rectangle{ id:mouse_area_rect anchors.centerIn: pa原创 2022-05-09 17:43:43 · 3172 阅读 · 0 评论 -
QML笔记(三)之QML中的几种布局
一.前言先前了解了QML的添加控件与绑定信号槽,那么控件的摆放就是一个问题,虽然可以手动去设置控件的位置,但是有些时候还是需要自动对齐啥的,这时候就需要用到布局,该篇文章先简单了解QML提供的布局方式,后续再做深入研究二.QML布局方式1.行布局(Row)import QtQuick 2.0import QtQuick.Window 2.0import QtQuick.Controls 2.1Window{ visible: true width: 640 heigh原创 2022-05-07 17:42:55 · 2166 阅读 · 0 评论 -
QML笔记(二)之QML添加控件与绑定信号槽
一.前言虽然采用QML进行开发,但是依旧属于Qt的范围,控件的使用与对应的信号使用仍然是核心,毕竟Qt就是一个界面库,然后他的核心就是信号槽二.添加控件1.QML的控件添加都是以控件名称+属性的方式进行添加的,楼主认为有点像CSS,控件的位置可以利用属性x y进行设置2.举例import QtQuick 2.8import QtQuick.Window 2.2import QtQuick.Controls 2.1import QtQuick.Controls.Material 2.1Wi原创 2022-05-06 14:04:40 · 1041 阅读 · 0 评论 -
QML笔记(一)之初识QML
一.QMLQML是Qt推出的Qt Quick技术的一部分,是一种新增的简便易学的语言。QML是一种陈述性语言,用来描述一个程序的用户界面:无论是什么样子,以及它如何表现。在QML,一个用户界面被指定为具有属性的对象树。二.建立QML工程1.新建项目,选择Qt Quick Application,然后一直下一步就好了2.项目图3.运行图4.双击该文件,会出现设计器未完待续…...原创 2022-05-02 22:19:50 · 991 阅读 · 0 评论