QPainter对象的一点说明

间QPainter的文档,当绘制设备是QWidget时,QPainter 对象只能在paintEvent() 函数,或者被paintEvent() 函数调用的函数中进行绘制。

构造的时候,或者开始画之前,需要首先传入一个QPaintDevice 来制定是在哪里画,比如构造的时候传入一个this指针,或者在开始画之前使用begin() 函数指定。

对于作为成员的QPainter,其绘制过程如下:

void PaintedWidget::paintEvent(QPaintEvent *)
{
painter.begin(this);
painter.drawLine(200, 100, 650, 100);
painter.setPen(Qt::red);
painter.drawRect(50, 50, 100, 400);
painter.setPen(QPen(Qt::blue, 5));
painter.setBrush(Qt::green);


int startAngle = 30 * 16;
int spanAngle = 120 * 16;
painter.drawPie(150, 150, 500, 500, startAngle, spanAngle);

painter.setPen(QPen(Qt::black, 5));
painter.drawPoint(400, 50);
//painter.drawEllipse(50, 150, 400, 200);
painter.end();
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值