- 摘要
- 隐藏标题栏
- 头文件声明鼠标移动虚函数
- .cpp文件实现功能
1
|
setWindowFlags(Qt::FramelessWindowHint | windowFlags());
|
无标题栏移动窗体的实现
头文件声明虚函数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
#define WIDGET_H
#include <QWidget> #include <a.out.h>
namespace Ui { class ; }
class : public QWidget { Q_OBJECT
public: explicit (QWidget *parent = 0); ~Widget();
protected: virtual void mousePressEvent(QMouseEvent *event); virtual void mouseMoveEvent大专栏 Qt 隐藏标题栏 窗口移动 鼠标事件an>(QMouseEvent *event); // 移动 virtual void mouseReleaseEvent(QMouseEvent *event); // 鼠标释放 private: Ui::Widget *ui; bool m_pressed; // 判断鼠标左键是否按下 QPoint m_pos; // 鼠标相对于窗口的位置,不是相对屏幕的位置 };
#endif // WIDGET_H
|
头文件实现虚函数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
void Widget::mousePressEvent(QMouseEvent *event) { if (event->button() == Qt::LeftButton) { m_pressed = true; m_pos = event->pos(); } }
void Widget::mouseMoveEvent(QMouseEvent *event) { if(m_pressed) { move(event->pos() - m_pos this->pos()); } }
void Widget::mouseReleaseEvent(QMouseEvent *event) { Q_UNUSED(event); // avoid the warnning that 'event' is unused while building the project
m_pressed = false; }
|