Qt去边框,可以实现拉大缩小窗口。

Qt中去掉边框是很容易的setWindowFlags(Qt::FramelessWindowHint|Qt::WindowMinMaxButtonsHint);就可以实现。

但是去掉边框之后就不能实现鼠标对窗口的拉大和缩小,要实现对窗口的拉大缩小,有两种方案:

1:去处理bool winEvent( MSG *message, long *result );重新实现,由于Qt可以接收Windows的消息,所以可在winEvent()函数中去处理Windows的消息,从而达到效果。

注意的是,要包含头文件Windows.h ,如果要使用宏GET_X_LPARAM和GET_Y_LPARAM就要包含#include .

2: 去实现bool eventFilter( QObject * watched, QEvent * event);
        void mouseReleaseEvent(QMouseEvent *event);
        void mouseMoveEvent(QMouseEvent *event);
        void mousePressEvent(QMouseEvent *event);

你可能感兴趣的:(Qt去边框,可以实现拉大缩小窗口。)