QTableView 设置列头 setHeaderView()

        //创建HeadView列头
        void TradeTableView::InitView()
        {

            //设置列头

            QHeaderView *pHorizontal = new TradeHeaderView(Qt::Horizontal,this);//使用自定义的列头

            if (pHorizontal)
            {
                setHorizontalHeader(pHorizontal);//设置水平的表头
            }

        }


//这个函数的作用就是:创建一个QHeaderView的实例,然后调用view的set方法,即表明view使用这个实例作为标题部件。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
QTableView是Qt框架中用于显示和编辑表格数据的控件,它默认只支持单级表头。如果需要实现多级表头,可以通过自定义代理来实现。 首先,需要创建一个自定义的代理类,继承QStyledItemDelegate。在该代理类中重写paint()方法,实现绘制多级表头的功能。 在paint()方法中,可以通过QPainter的绘图函数来绘制表头的内容。根据需要,可以设置表头的背景色、边框等样式。 在QTableView中使用这个自定义代理类,可以通过setViewportMargins()方法来修改视图的边距,以留出足够的空间绘制多级表头。 接下来,需要使用QHeaderView来实现多级表头的功能。通过setSectionsMovable()和setSectionResizeMode()方法可以设置表头的可移动性和调整模式。 首先要创建一个QHeaderView对象,并将其设置为表格控件的水平表头(horizontalHeader)。然后,通过调用QHeaderViewsetModel()方法,将模型与表头关联,从而显示表头内容。 如果需要设置多级表头,可以在QHeaderView中添加子表头,即使每个单独子表头也是一个QHeaderView,可以设置其大小、样式等属性。 最后,通过调用QTableViewsetHorizontalHeader()方法,将创建好的多级表头设置到表格视图中。 总结来说,实现QTableView的多级表头,需要自定义代理类以绘制表头的内容,并使用QHeaderView来实现多级表头的功能。通过设置QHeaderView的子表头和调整模式,最后将多级表头setQTableView中即可。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值