51 lines
1.2 KiB
C
51 lines
1.2 KiB
C
|
#ifndef MYGRAPHICSVIEW_H
|
||
|
#define MYGRAPHICSVIEW_H
|
||
|
|
||
|
#include <QObject>
|
||
|
#include <QGraphicsView>
|
||
|
#include <QMouseEvent>
|
||
|
#include <QWheelEvent>
|
||
|
#include <QScrollBar>
|
||
|
#include "datafile/view/mygraphicsscene.h"
|
||
|
|
||
|
class MyGraphicsView : public QGraphicsView
|
||
|
{
|
||
|
Q_OBJECT
|
||
|
public:
|
||
|
MyGraphicsView();
|
||
|
~MyGraphicsView();
|
||
|
|
||
|
private:
|
||
|
MyGraphicsScene *m_scene;
|
||
|
QSize m_viewSize;
|
||
|
|
||
|
//鼠标起始点和结束点
|
||
|
QPoint m_startPoint;
|
||
|
QPoint m_endPoint;
|
||
|
bool m_leftBtnPressed = false;
|
||
|
bool m_rightBtnPressed = false;
|
||
|
|
||
|
protected:
|
||
|
void resizeEvent(QResizeEvent *event);//窗口大小发生变化的时候,该函数触发
|
||
|
void mouseDoubleClickEvent(QMouseEvent *event);
|
||
|
void mousePressEvent(QMouseEvent *event);
|
||
|
void mouseReleaseEvent(QMouseEvent *event);
|
||
|
void mouseMoveEvent(QMouseEvent *event);
|
||
|
void wheelEvent(QWheelEvent *event);
|
||
|
|
||
|
public:
|
||
|
QPicture getPicture(Marker marker,int penWidth = 1);
|
||
|
void creatView(Marker marker);
|
||
|
void creatView(QPixmap pixmap);
|
||
|
void cleanView();
|
||
|
void swithView(QPicture pic);
|
||
|
void reflushBlockView(QPoint p);
|
||
|
|
||
|
signals:
|
||
|
void siMouseMove(QPointF point);
|
||
|
|
||
|
public slots:
|
||
|
};
|
||
|
|
||
|
#endif // MYGRAPHICSVIEW_H
|