12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- // *****************************************************************************
- // 版权所有(C)2023~2099 上海骄成超声波技术有限公司
- // 保留所有权利
- // *****************************************************************************
- // 作者 : 杨坚
- // 版本 : 1.0
- // 功能说明:
- // 摇杆页面
- // *****************************************************************************
- #ifndef __JOYSTICKPAGE_H__
- #define __JOYSTICKPAGE_H__ 1
- #include <QWidget>
- #include <QPainter>
- #include <QMouseEvent>
- class JoystickPage : public QWidget
- {
- Q_OBJECT
- public:
- JoystickPage(QWidget* parent = nullptr);
- protected:
- void paintEvent(QPaintEvent*) override;
- void mousePressEvent(QMouseEvent* event) override;
- void mouseMoveEvent(QMouseEvent* event) override;
- void mouseReleaseEvent(QMouseEvent*) override;
- private:
- void updateHandlePosition(const QPoint& pos);
- signals:
- void PositionChangedSignals(qreal x, qreal y);
- private:
- int m_radius;
- QPoint m_handlePos;
- bool m_isPressed;
- /**微小移动
- */
- qreal m_deadZone= 0.11;
- };
- #endif //__JOYSTICKPAGE_H__
|