qt绘图的机制 qt中的所有的图都是画出来的 例如我们的按钮 窗口 标签上的图 画图需要两个东西:
画家: QPainter
画板QPaintDevice(常见的控件 按钮 label 窗口…)
代码示例:
#include "widget.h"
#include "ui_widget.h"
#include <QPainter>
#include <QPixmap>
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
i=0;
j=0;
}
Widget::~Widget()
{
delete ui;
}
void Widget::paintEvent(QPaintEvent *event) //窗口改变事件处理函数
{
QPainter p(this);
p.drawPixmap( i,j,50,50,QPixmap("../Image/butterfly.png"));
}
void Widget::mousePressEvent(QMouseEvent *event) //鼠标点击事件处理函数
{
i = event->x();
j = event->y();
//刷新绘图
this->update();
}