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

【QML COOK】- 008-自定义属性

前面介绍了用C++定义QML类型,通常在使用Qt Quick开发项目时,C++定义后端数据类型,前端则完全使用QML实现。而QML类型或Qt Quick中的类型时不免需要为对象增加一些属性,本篇就来介绍如何自定义属性。

1. 创建项目,并编辑Main.qml

import QtQuickWindow {width: 640height: 480visible: truetitle: qsTr("Hello World")MouseArea {anchors.fill: parentonClicked: {sender.aInt += 1}}Item {id: senderproperty int aIntonAIntChanged:() =>  {console.log("Sender Now aInt is :", aInt)}}Item {id: receiverConnections {target: senderfunction onAIntChanged(message : string) {console.log("Receiver Now aInt is :", sender.aInt)}}}
}
  • 在sender对象中通过关键字property创建了一个int类型的aInt属性
  • 定义属性后QML会自动定义一个槽名为onXXXXChanged。因此结合上篇介绍的槽的相关内容,我们就可以在本对象和其他对象中监控自定义属性的变化了

2. 执行程序

在窗口中点击鼠标便可以在Qt Creator中看到如下Log了

http://www.lryc.cn/news/278478.html

相关文章:

  • 前端页面优化做的工作
  • Spark六:Spark 底层执行原理SparkContext、DAG、TaskScheduler
  • 关于鸿蒙的笔记整理
  • 【漏洞复现】先锋WEB燃气收费系统文件上传漏洞 1day
  • MYSQL篇--锁机制高频面试题
  • 创建一个郭德纲相声GPTs
  • 靶机实战(10):OSCP备考之VulnHub Tre 1
  • 在windows11系统上利用docker搭建linux记录
  • swift对接环信sdk
  • 单片机中的PWM(脉宽调制)的工作原理以及它在电机控制中的应用。
  • css 怎么绘制一个带圆角的渐变色的边框
  • Kotlin DSL C++项目引入OpenCV异常处理
  • 【微服务】 Spring cold、Kubernetes、Service mesh
  • 【scala】编译build报错 “xxx is not an enclosing class“
  • vue3+ts+vite项目从0 搭建,配置安装router/pinia/element-plus/scss等
  • 华为OD机试 - 矩阵匹配(Java JS Python C)
  • 使用ffmpeg实现音频静音修剪
  • Java项目调试实战:如何高效调试Spring Boot项目中的GET请求,并通过equalsIgnoreCase()解决大小写不一致问题
  • Google Pixel 与 iPhone手机:哪个更好?
  • ddos攻击会让服务器受到什么影响?-速盾网络(sudun)
  • NSSCTF Interesting_include
  • IPv6路由协议---IPv6动态路由(OSPFv3-5)
  • GPT Store开业大吉:一场AI技术与创新的盛宴
  • Linux---gcc编译
  • 使用阿里云镜像创建一个Spring Boot项目
  • 工智能基础知识总结--词嵌入之Word2Vec
  • redis stream restTemplate消息监听队列框架搭建
  • 【期末不挂科-C++考前速过系列P1】大二C++第1次过程考核(3道简述题&7道代码题)【解析,注释】
  • 游戏开发中,你的游戏图片压缩格式使用ASTC了吗
  • 【PostgreSQL】数据查询-概述