标题:Qt数据库应用13-通用数据库分页
作者:liudianwu
日期:2022-02-27 13:10
内容:
## 一、前言
数据库分页展示,在所有的涉及到数据库记录的项目中都是需要的,除了简单的设备信息表、用户信息表这种很少几条几十条数据量的表除外,其余的日志记录表等都需要分页展示数据,少量的数据可以滚动条下拉查看完,超过百条以上的一般建议要加上分页的功能处理,不然用户查看起来明显不舒服,体验不友好,最明显的例子就是网页的搜索结果,一次性展示上万条,不仅是多余的增加了查询的压力,而且用户往往只关注最前面的几页记录,再比如查询报警记录,一般是按照时间降序排序,最近最新的报警记录显示在最前面,用户最关心的也就是最前面的结果。
数据库分页一般是通过sql语句的limit去处理,根据用户选择的条件构建sql语句传入数据库执行,每当单击上一页、下一页、第一页、末一页等按钮的时候,也是重新执行了sql语句返回结果。最开始这个数据库分页类是将分页按钮都集中在一起,后面单独拆分了出来,逻辑代码一个类,界面单独成分页导航控件专门展示UI外观,这个外观可以设置各种颜色和样式等。
数据库通用翻页类特点:
1. 可设置每页多少行记录,自动按照设定的值进行分页。
2. 可设置要查询的表名、字段集合、条件语句、排序语句。
3. 可设置第一页、上一页、下一页、末一页、翻页按钮。
4. 可设置当前页、总页数、总记录数、每页记录数、查询用时标签页。
5. 多线程查询总记录数,数据量巨大时候不会卡主界面。
6. 建议条件字段用整型类型的主键,速度极快。
7. 提供查询结果返回信号,包括当前页、总页数、总记录数、查询用时等信息。
8. 可设置所有列或者某一列对齐样式例如居中或者右对齐。
9. 可增加列用于标识该条记录,设定列的位置、标题、宽度。
10. 提供函数直接执行第一页、上一页、下一页、末一页。
11. 提供函数直接跳转到指定页。
12. 根据是否第一页、末一页自动禁用对应的按钮。
13. 本控件是翻页功能类,和翻页控件navpage完美搭配,形成超级牛逼的翻页控件。
分页导航控件特点:
1. 可设置页码按钮的个数。
2. 可设置字体大小。
3. 可设置边框圆角角度、大小、颜色。
4. 可设置正常状态背景颜色、文字颜色。
5. 可识别悬停状态背景颜色、文字颜色。
6. 可设置按下状态背景颜色、文字颜色。
7. 可设置选中状态背景颜色、文字颜色。
8. 可设置导航位置居中对齐、左对齐、右对齐。
9. 可设置是否显示提示标签控件。
10. 自动计算总页码数显示隐藏多余按钮。
11. 自动计算切换页码导航。
12. 和分页导航功能类无缝对 ..