Qt界面优化:鼠标双击特效

网友投稿 696 2022-11-09

Qt界面优化:鼠标双击特效

Qt界面优化:鼠标双击特效

Qt界面优化:鼠标双击特效

文章目录

​​Qt界面优化:鼠标双击特效​​​​一、双击特效​​​​二、使用步骤​​

​​1. .h部分​​​​2. .cpp部分​​

​​注意点​​

​​gif动图的背景必须是透明的!!!​​

​​总结​​

一、双击特效

二、使用步骤

1. .h部分

代码如下:

#include #include #include #include

protected: void mouseDoubleClickEvent(QMouseEvent *event); //鼠标双击事件

2. .cpp部分

代码如下:

//鼠标双击特效void MainWindows::mouseDoubleClickEvent(QMouseEvent *event){ //判断是否为鼠标左键双击 if(event->button() == Qt::LeftButton) { QLabel * label = new QLabel(this); QMovie * movie = new QMovie("://images/mouse.gif");//加载gif图片 //设置label自动适应gif的大小 label->setScaledContents(true); label->setMovie(movie); //这里为了调用move方便,进行resize,需要知道的是gif的大小本来也就是150*150 label->resize(180,180); label->setStyleSheet("background-color:rgba(0,0,0,0);"); //设置鼠标穿透 label->setAttribute(Qt::WA_TransparentForMouseEvents, true); //让label的中心在当前鼠标双击位置 label->move(event->pos().x()-label->width()/2,event->pos().y()-label->height()/2); //开始播放gif movie->start(); label->show(); //绑定QMovie的信号,判断gif播放次数 connect(movie, &QMovie::frameChanged, [=](int frameNumber) { if (frameNumber == movie->frameCount() - 1)//gif播放次数为1,关闭标签 label->close(); }); }}

注意点

gif动图的背景必须是透明的!!!

总结

以上是部分Qt关于界面优化的部分,所有相关的Qt界面优化的部分,均在下方专栏——Qt界面优化中,大家如果感兴趣可以进行观看并使用,希望通过这些文章能够使大家的Qt软件更加美观和完美 !!!

另,如果大家有时间的话,也可以在个人主页中的专栏部分,查看我的Qt实战专栏与Qt功能优化专栏哦,里面分别存放有Qt相关的实战软件和相对实用的附属功能,大家感兴趣可以看看(๑>؂<๑)

另附​​Qt实战:云曦聊天室篇​​​和​​Qt功能优化:Qt链接外部程序​​两篇相关文章,大家可以下滑到文章下方专栏处,查看相关专栏中的其它文章,希望能帮助到大家,感谢大家支持~( ̄▽ ̄~)~

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:交换机与路由器技术:OSPF路由重分发、OSPF的NSSA区域和OSPF虚链路
下一篇:bzoj2626 JZPFAR
相关文章

 发表评论

暂时没有评论,来抢沙发吧~