qpainter底层(qpainter begin)

qpainter底层(qpainter begin)svg xmlns http www w3 org 2000 svg style display none svg

大家好,我是讯享网,很高兴认识大家。



 <svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path> </svg> 

讯享网

QPainter类在小部件和其他绘制设备上执行低级绘制。

QPainter提供了高度优化的功能来完成大多数绘图GUI程序所需的功能。它可以画任何东西,从简单的线条到复杂的形状,如馅饼和和弦。它还可以绘制对齐的文本和像素图。通常,它在“自然”坐标系中绘制,但也可以进行视图和世界变换。QPainter可以对继承QPaintDevice类的任何对象进行操作。
QPainter的常见用途是在小部件的绘画事件中:构造和自定义(例如设置笔或画笔)画家。然后画画。请记住在绘制后销毁QPainter对象。
QPainter的核心功能是绘图,但该类还提供了几个功能,允许您自定义QPainter设置及其渲染质量,以及其他启用剪裁的功能。此外,您可以通过指定画家的构图模式来控制不同形状如何合并在一起。
isActive()函数指示画家是否处于活动状态。painter由begin()函数和接受QPaintDevice参数的构造函数激活。end()函数和析构函数会将其停用。

QPainter与QPaintDevice和QPaintEngine类一起构成了Qt油漆系统的基础。QPainter是用于执行绘图操作的类。QPaintDevice表示可以使用QPainter在其上绘制的设备。QPaintEngine提供了画家用来绘制不同类型设备的界面。如果绘制器处于活动状态,device()将返回绘制器绘制的绘制设备,paintEngine()则返回绘制器当前正在运行的绘制引擎。有关详细信息,请参阅绘制系统。

QPainter ->QPaintEngine->QPaintDevice

有时,让别人在不寻常的QPaintDevice上作画是可取的。QPainter支持一个静态函数setRedirected()。

警告:当paintdevice是一个小部件时,QPainter只能在paintEvent()函数内部或在paintEvent()调用的函数中使用。


讯享网

绘图事件
QPainter只能使用paintEvent(QPaintEvent *ev)这个绘图事件在Qt窗口上绘图,绘图事件会在窗口刷新时触发,如窗口最大化、窗口最小化、拖动窗口边缘等,如下是重写父类的绘图事件,实现在窗口上绘制:

QPainter只能使用paintEvent(QPaintEvent *ev)这个绘图事件在Qt窗口上绘图,绘图事件会在窗口刷新时触发

讯享网

在这里插入图片描述

drawPoint(绘制点)
drawPoints(绘制多个点)
drawLine(绘制线)
drawLines(绘制多条线)
drawText(绘制文本)
drawConvexPloygon(绘制凸多边形)
drawRoundedRect(绘制带倒角矩形)
drawPolyline(绘制多段线)
drawPolygon(绘制多边形)
drawRect(绘制矩形)
drawRects(绘制多矩形)
drawEllipse(绘制椭圆)
drawArc(绘制弧)
drawChord(绘制弦)
drawPie(绘制扇形)

https://blog.csdn.net/zwcslj/article/details/

小讯
上一篇 2025-05-15 13:38
下一篇 2025-04-26 19:37

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/165939.html