QT界面设计随笔

这篇博客主要分享了QT界面设计的一些实用技巧,包括DrawRect函数的使用方式以避免边框问题,如何在TableView中实现富文本显示,解决QTextDocument setHtml的水平居中问题,理解QT的隐式共享机制,新增信号流程的步骤,以及Dialog.exec的阻塞行为。这些小技巧对于提升QT应用的开发效率和用户体验非常有帮助。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

主要记录一些日常使用的小Tips

1 . DrawRect函数

默认画笔宽度为1,直接使用会发现边框线只有左边和上边有,而右边和下边被遮盖了。
方案1:设置画笔宽度大于1即可。
pen.setWidth(2);
方案2:宽,高 -1
painter.drawRect(this->rect().x(),this->rect().y(),this->rect().width()-1,this->rect().height()-1,);

2 TableView富文本显示

QLabel QTextDocument经确认是可以显示富文本的。(还有另外一个控件也是可以的,但我未进行验证)。

如果要实现TableView富文本显示的话,可以设置表格代理,在代理里面进行富文本支持。
举个例子:

View类名 MyTableView继承于QTableView
model类名随意,为你自己定义的model
代理类名MyStyleItemDelegate

View构造函数中创建代理类
new MyStyleItemDelegate(this)

MyStyleItemDelegate类:
除了必要实现必要函数。主要要是实现
void paint(QPainter *,const QStyleOptionViewItem &, const QModelIndex &)
{
当index.data().userType()=QString时


有点多后续再贴

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CoomCon

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值