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

Qt QML 坑

Qt QML 坑


QML


Listview

1、不定高item 导致item重叠

ListView {id: _cityListViewproperty var _cityArray: [{ type:"A",cityArray:[]},{ type:"B",cityArray:[]},{ type:"C",cityArray:[]},{ type:"D",cityArray:[]}]model: ListModel{}// 一个类型的城市delegate: Rectangle {width: _cityListView.widthheight: {var region = _cityListView._cityArray[index];if(region.cityArray.length <= 5)return 30else{if(region.cityArray.length%5 === 0)return (region.cityArray.length/5)*30;elsereturn (region.cityArray.length/5+1)*30;}}}
}

这个list中存放item是不定高的,但是会出现item重叠的问题。
解决方法:
将 model = null,再重新赋值 model 就可以了。

2、Qt中 enum 在 QML 中使用并比较
在 c++ 中定义

enum IfoEndType{HotCityEnd = 1,AllCityEnd};Q_ENUM(IfoEndType)

在 qml 中存储并比较

property var ifoEndInt: ChooseCityModel.AllCityEndifoEndInt === ChooseCityModel.AllCityEnd  //错的,得不到正确值
ifoEndInt == ChooseCityModel.AllCityEnd //正确,可以得到正确值

3、打印 qml 的 object

var obj = {}
obj.type = "aaa"
console.log("obj--",obj) //这样只会打印   qml: obj-- [object Object]function printObjectContent(obj, indent = "") {for (var key in obj) {if (obj.hasOwnProperty(key)) {if (typeof obj[key] === "object" && !Array.isArray(obj[key])) {console.log(indent + key + ": {")printObjectContent(obj[key], indent + "  ")console.log(indent + "}")} else {console.log(indent + key + ": " + JSON.stringify(obj[key]))}}}}printObjectContent(obj) //用这个函数打印内容
http://www.lryc.cn/news/388023.html

相关文章:

  • Chrome浏览器web调试(js调试、css调试、篡改前置)
  • 【Java】Logbook优化接口调用日志输出,优雅!
  • LabVIEW电压电流实时监测系统
  • 骁龙相机拍照流程分析
  • sql-语句
  • 解决Vue3项目中跨域问题的步骤
  • macos scroll direction
  • Websocket实现方式二——注解方式
  • 零基础开始学习鸿蒙开发-页面导航栏布局设计
  • 【Hive中常见的优化手段----数据采集!Join 优化!Hive索引!数据倾斜!mapreduce本地模式!map和reduce数量调整!】
  • 【面试系列】软件工程师高频面试题及详细解答
  • Qt开发 | Qt界面布局 | 水平布局 | 竖直布局 | 栅格布局 | 分裂器布局 | setLayout使用 | 添加右键菜单 | 布局切换与布局删除重构
  • LW-DETR: A Transformer Replacement to YOLO for Real-Time Detection
  • 前端技术(二)——javasctipt 介绍
  • FireFox 编译指南2024 Windows10篇-环境准备(一)
  • Spring Boot中的热部署配置
  • 用ChatGPT快速打造一个专业WordPress网站
  • dsp入门
  • Java并发编程-Atomiclnteger、LongAdder等原子类的使用及案例实战
  • 九浅一深Jemalloc5.3.0 -- ②浅*size class
  • JavaScript——属性的增删改查
  • 51单片机第15步_串口多机通讯使用CRC8校验
  • WPF----进度条ProgressBar(渐变色)
  • Apipost接口测试工具的原理及应用详解(四)
  • 【图论】200. 岛屿问题
  • AI学习指南机器学习篇-随机森林的优缺点
  • 基于boost::beast的http服务器(上)
  • 深度学习之近端策略优化(Proximal Policy Optimization,PPO)
  • 用pycharm进行python爬虫的步骤
  • 重写功能 rewrite