Qt开发中一下小细节问题

本文总结了Qt开发中遇到的一些细节问题,包括QTextEdit中光标定位、QLabel屏蔽HTML代码、设置QLabel可选择状态、调整字体颜色、事件过滤器的使用、QStringList去重、子类与父类转换、任务栏图标闪烁、保存gif图片以及QSS透明效果等。通过实例代码展示了问题的解决方案,有助于提升Qt开发效率。
摘要由CSDN通过智能技术生成

对于Qt开发过程中,做一个项目在一个大的对话框上锁话的时间相对来说较少,但是花在细节处理的方向上往往占用了很多时间,这次就来个好好的总结一下,自己项目开发中遇到的一些小问题,好让自己更好的记忆,提高自己开发的效率,同时也提供大家参考下,当然如果有错误的地方,还希望大家指出来,我好进行验证并修改,好啦!废话不多说,直接上代码。(开始的时候不进行划分,等有空了,再来划分)

1.对QTextEdit中对鼠标位置的调整

QTextCursor cursor = QTextEdit::textCursor();//获得编辑光标
cursor.setPosition();//设定光标位置
QTextEdit::setTextCursor(cursor);//将该光标返回到QTextEdit中,位置也是存在的

这样我们就可对QTextEdit中光标的位置进行你需要的调整。

2.如何使QLabel可以屏蔽HTML的代码

在开发过程中经常会用到Qlabel来显示一个字符串,但是如果这个字符串中包含html,那该怎么办呢?

比如说:QLabel strLabel("<font color=red>hello Qt</font>");

按着正常的显示的话,会显示成hello Qt已经不是我们要的效果啦!

这时候我们应该改变QLabel 的textFormat:  QLabel::setTextFormat(Qt::PlainText);

这样的话,你就可以搞定啦!

3.让QLabel处于可以选择的状态(可以通过鼠标来进行复制)

设置文本的互动:QLabel::setTextInteractionFlags(Qt::TextSelectableByMouse);//设置鼠标可以选择标志

QLabel::setTextInteractionFlags(Qt::TextSelectableByKeyboard);//设置键盘操作

4.QLabel的字体颜色

对于Qlabel的颜色,主要是通过俩种方式来实现一种是使用样式(setStyleSheet)还有一种就是使用调色板(QPalette),看代码

QLabel *label =new QLabel();

label->setstyleSheet("color:red");

label->setText("木子草33");

调色板

QPalette palette;

palette.setColor(QPalette::windowText,Qt::red);

label->SetPalette(palette);

通过将代码写入你会发现两者的效果是一样的。

5.事件过滤器

对不同的问题,有时候我们很难从最表层找出我们可以解决的方法,这时候深入一点,或许问题的解决难道就自然而然就降低啦!这就是我要说的事件过滤器。

对于事件的处理首先应该明白的是事件

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值