总第42篇
本文主要梳理总结了我自己在项目开发过程中经常遇到的一个问题,就是用QPainter
进行图形绘制时,边角显示不完整的现象。这个问题虽然比较简单,但是很容易忘记,每次绘图时都要调试一下,故总结于此,方便以后查阅,也方便同行伙伴参考。
1.Painter
绘制
我们知道,QPainter
简直是王者,任何图形都可以由它绘制出来。
如上图所示,项目中在制作这个页面时,我们会将每个部分制作成一个单独的控件,这个控件继承于QPushButton
类,并重写void resizeEvent(QResizeEvent *event)
和void paintEvent(QPaintEvent *event)
两个函数,其中前者主要获取并设定这个控件中图标
和文字
的相对位置,后者要主负责对控件重新绘制。
在类的初始化时,要设定可选中属性:setFocusPolicy(Qt::StrongFocus)
。
下面将其主要代码放在下面: