WindowAppUiNavView.h 882 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #pragma once
  2. #include "Common.h"
  3. class WindowAppUiNavView : public QGraphicsView
  4. {
  5. Q_OBJECT
  6. public:
  7. WindowAppUiNavView(QWidget*parent = nullptr);
  8. ~WindowAppUiNavView();
  9. // 绑定对应的视图
  10. void setMainView(QGraphicsView* mainView);
  11. public slots:
  12. // 刷新界面
  13. void updateMainViewportRegion();
  14. private:
  15. //// 处理缩放消息,固定宽高比
  16. //void resizeEvent(QResizeEvent* resizeEvent) override;
  17. // 鼠标消息
  18. void mousePressEvent(QMouseEvent* event) override;
  19. void mouseMoveEvent(QMouseEvent* event) override;
  20. void mouseReleaseEvent(QMouseEvent* event) override;
  21. // 滚轮消息
  22. void wheelEvent(QWheelEvent* event) override;
  23. void paintEvent(QPaintEvent* event) override;
  24. private:
  25. // 初始化界面风格
  26. void initStyle();
  27. private:
  28. bool m_mouseDown;
  29. QPolygon m_viewportRegion;
  30. QGraphicsView* m_mainView;
  31. };