如何优化QTableView的性能
1个回答
展开全部
Step 1:通过用户操作,确认数据范围,发送请求到后台线程。
Step 2:后台生产者线程,根据数据范围,从数据源提取数据,一边提取一边发送至消费者线程。
Step 3:消费者线程接收原始数据,对其根据用户指令进行一定处理和变换。
Step 4:处理完毕的数据,整合后统一推送至自定义的TableModel。
Step 5:TableModel接收到数据后,通过beginResetModel()方法通知界面准备更新,然后将数据保存在本地,并重置HeaderText等辅助界面运作的数据结构。然后通过endResetModel()方法刷新界面。
Step
6:数据容器为两层嵌套的QVector,内层每个Vector为一个column。针对数据空格,做了一个row*column大小的双层vector,用来保存实际的数据索引。TableModel的rowCount()、columnCount()均为输出索引表对应维度的长度。data()方法内直接通过row、column两个下标查询索引表,索引存在则根据索引取出对应数据,无索引则返回空值。
Step 2:后台生产者线程,根据数据范围,从数据源提取数据,一边提取一边发送至消费者线程。
Step 3:消费者线程接收原始数据,对其根据用户指令进行一定处理和变换。
Step 4:处理完毕的数据,整合后统一推送至自定义的TableModel。
Step 5:TableModel接收到数据后,通过beginResetModel()方法通知界面准备更新,然后将数据保存在本地,并重置HeaderText等辅助界面运作的数据结构。然后通过endResetModel()方法刷新界面。
Step
6:数据容器为两层嵌套的QVector,内层每个Vector为一个column。针对数据空格,做了一个row*column大小的双层vector,用来保存实际的数据索引。TableModel的rowCount()、columnCount()均为输出索引表对应维度的长度。data()方法内直接通过row、column两个下标查询索引表,索引存在则根据索引取出对应数据,无索引则返回空值。
柚鸥ASO
2024-03-16 广告
2024-03-16 广告
ASO优化主要包括以下几个方面:1. 优化应用名称和描述:在应用商店中,应用名称和描述是影响用户选择的重要因素。应用名称应该简洁明了,易于记忆,同时也要包含关键的关键词,以便用户搜索时更容易找到。应用描述应该详细清晰,向用户解释应用的功能和...
点击进入详情页
本回答由柚鸥ASO提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询