在Qt5.12中,我试图将绘制的水平标题调整为正确的大小

问题描述

我将QHeaderView子类化为水平标题,并重新实现了其paintSection()方法以允许添加文本,例如标头标签为“轴X1”。但是,所有尝试自动调整水平页眉大小以使原始文本+涂上文本以适合页眉的尝试都失败了。

调整大小到标题文本时,调整大小似乎可以正常工作,但是在将内容添加标题时失败,因为Qt的调整大小算法似乎不考虑绘制的内容? 我的代码如下:

请特别注意void HHeaderView :: paintSection(QPainter * painter,const QRect&rect,int logicalIndex)const 方法如下。行:

painter->save();
painter->drawText(rect,Qt::AlignCenter,"Axis X1 "+headertext);
painter->restore();
return;

标题标签headertext中添加内容,即“轴X1”。不幸的是,在调整列的大小以适合内容并裁剪标题内容时,Qt似乎没有考虑到这些额外内容的大小。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)