33,311
社区成员
发帖
与我相关
我的任务
分享
#include "dialog.h"
#include "ui_dialog.h"
#include <QDebug>
Dialog::Dialog(QWidget *parent) :
QDialog(parent),
ui(new Ui::Dialog)
{
ui->setupUi(this);
resize(600,500);
pix = QPixmap(200,200);
pix.fill(Qt::white);
isDrawing = false;
scale = 1;
pushBtn = new QPushButton(this);
pushBtn->setText(tr("zoomIn"));
pushBtn->move(500,450);
connect(pushBtn,SIGNAL(clicked()),this,SLOT(zoomIn()));
}
Dialog::~Dialog()
{
delete ui;
}
void Dialog::paintEvent(QPaintEvent *event)
{
QPainter pp(&pix);
pp.drawLine(lastPoint,endPoint);
lastPoint = endPoint;
QPainter painter(this);
painter.drawPixmap(0,0,pix);
}
void Dialog::mousePressEvent(QMouseEvent *event)
{
if(event->button()==Qt::LeftButton)
{
lastPoint = event->pos();
}
}
void Dialog::mouseMoveEvent(QMouseEvent *event)
{
if(event->buttons()&Qt::LeftButton)
{
endPoint = event->pos();
update();
}
}
void Dialog::mouseReleaseEvent(QMouseEvent *event)
{
if(event->button() == Qt::LeftButton)
{
endPoint = event->pos();
update();
}
}
//void Dialog::zoomIn()
//{
// scale *= 2;
// update();
//}