#include "drawwidget.h"
#include<QtGui>
#include<QPen>
DrawWidget::DrawWidget(QWidget *parent) : QWidget(parent)
{
setAutoFillBackground(true);
setPalette(QPalette(Qt::white));
pix=new QPixmap(size());
pix->fill(Qt::white);
setMinimumSize(600,400);
}
void DrawWidget::mousePressEvent(QMouseEvent *event)
{
startPos=event->pos(); //鼠标当前点的位置
}
void DrawWidget::mouseMoveEvent(QMouseEvent *e)
{
QPainter *painter=new QPainter;
QPen pen;
pen.setStyle((Qt::PenStyle)style);
pen.setWidth(weight);
pen.setColor(color);
painter->begin(pix);
painter->setPen(pen);
painter->drawLine(startPos,e->pos()); //绘制开始点到移动点的位置
painter->end();
startPos=e->pos();
update();
}
void DrawWidget::paintEvent(QPaintEvent *event)
{
QPainter painter(this);
painter.drawPixmap(QPoint(0,0),*pix);
}
void DrawWidget::resizeEvent(QResizeEvent *event)
{
if(height()>pix->he
QPainter QPixmap使用
最新推荐文章于 2025-07-01 16:05:18 发布