当我们隐藏了系统窗口后,无法完成对窗口的缩放,这里缩放方法通过重写一些鼠标事件来实现。具体代码如下:
头文件:
#define PADDING 2
class MainFrame : public QWidget
{
Q_OBJECT
public:
MainFrame(QWidget *parent = 0);
~MainFrame();
protected:
void mouseReleaseEvent(QMouseEvent *event);
void mouseMoveEvent(QMouseEvent *event);
void mousePressEvent(QMouseEvent *event);
private:
void region(const QPoint &cursorPoint);
private:
MainWindow *mainwindow = nullptr;
bool isLeftPressDown;
QPoint dragPosition;
enum Direction{
UP = 0,
DOWN=1,
LEFT,
RIGHT,
LEFTTOP,
LEFTBOTTOM,
RIGHTBOTTOM,
RIGHTTOP,
NONE
};
Direction dir;
};
cpp: