Qt分页导航控件

2018-06-17 23:53:33来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

最近在使用QTableWidget时,因为结果数量比较多而且又有单元格控件,为了改善效率要做分页处理。在网上找了一番,最后在http://www.cppblog.com/biao/archive/2011/10/30/159350.html 基础上修改而来,首先感谢原作者。

 

改后的版本:http://files.cnblogs.com/files/roadbike/PageNavigator.7z

新的效果如下图(windows系统):

 

改动点:

点击页码标签后,若之前有手工输入页码,先清除之;

解决页码标签内存泄漏;

页码标签padding增大为6,方便点击(可能是系统的差别,看着原版截图边距也蛮大的,在我的win10就挨得很近);

上一页、下一页与页码之间增加分隔符,避免如点击下一页时误点到页码(页码标签长度变化时比较容易点错);

setStyleSheet挪到构造函数中;

调整代码格式与类命名、统一参数命名等使其符合我们项目的标准;

其他小改动不太记得了 O(∩_∩)O哈哈哈~

 

使用方法,引用原文,并把类名等更新了:

    // 把分页组件加入到当前窗口
    pageNavigator = new PageNavigator();
    layout()->addWidget(pageNavigator);

当总页数改变时(如查询数据库操作得到总页数),只需要调用pageWidget的两个函数
void Widget::changeMaxPage() {
    pageNavigator->setMaxPage(ui->lineEdit->text().toInt());
    pageNavigator->setCurrentPage(1);
}
pageNavigator上的页码被点击后,会发射void currentPageChanged(int page)信号,然后主窗口里再作出相应反应,如查询分页查询数据库

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:POJ 3087 Shuffle'm Up 模拟,看着不像搜索啊

下一篇:Lexer的设计--中(4)