Qt之QPainter:在窗口中绘制一条线
时间: 2018-09-05来源:OSCHINA
前景提要
「深度学习福利」大神带你进阶工程师,立即查看>>>
1、widget.h中: public: Widget(QWidget *parent = 0); ~Widget(); void paintEvent(QPaintEvent *ev); void mousePressEvent(QMouseEvent *ev); void mouseMoveEvent(QMouseEvent *ev); void mouseReleaseEvent(QMouseEvent *ev); QVector<QPoint>_lines;
2、widget.cpp中 #include <QPixmap> #include <QMouseEvent> void Widget::paintEvent(QPaintEvent *) { QPainter p(this); for(int i = 0; i < _lines.size() - 1; ++i){ p.drawLine(_lines.at(i), _lines.at(i+1)); } } void Widget::mouseMoveEvent(QMouseEvent *ev) { _lines.append(ev->pos()); update(); } void Widget::mousePressEvent(QMouseEvent *ev) { _lines.append(ev->pos()); } void Widget::mouseReleaseEvent(QMouseEvent *ev) { _lines.append(ev->pos()); }

科技资讯:

科技学院:

科技百科:

科技书籍:

网站大全:

软件大全:

热门排行