Qt程序设计-无边框可移动可拖拽调整大小窗体

本文讲解Qt-无边框可移动可拖拽调整大小窗体。

通过鼠标的按下移动进行窗体的移动,拖拽调整窗体大小。

实现过程如下:

创建QWidget窗体,添加一个按钮控制窗体的关闭。

#ifndef MYWIDGET_H
#define MYWIDGET_H

#include <QWidget>

#include <QMouseEvent>
//定义拖拽窗体边缘检测大小
#define PADDING 10
//定义识别所处的边缘位置
enum Direction
{
    UP, DOWN, LEFT, RIGHT, LEFTTOP, LEFTBOTTOM, RIGHTBOTTOM, RIGHTTOP, NONE 
};

namespace Ui {
class MyWidget;
}

class MyWidget : public QWidget
{
    Q_OBJECT

public:
    explicit MyWidget(QWidget *parent = 0);
    ~MyWidget();
public:
    //鼠标的位置,改变光标
    void region(const QPoint &currentGlobalPoint);
protected:
    // 鼠标按下 鼠标相对于窗体的位置
    void mousePressEvent(QMouseEvent *event);
    //鼠标移动 若鼠标左键被按下,移动窗体位置
    void mouseMoveEvent(QMouseEvent *event);
   

相关推荐

  1. Qt程序设计-边框移动调整大小

    2024-02-20 10:42:03       53 阅读
  2. C#鼠标边框浮动的方法:控制

    2024-02-20 10:42:03       33 阅读
  3. Vue3封装的弹

    2024-02-20 10:42:03       50 阅读
  4. Qt边框窗口拖动

    2024-02-20 10:42:03       45 阅读
  5. QT 标题栏 实现移动

    2024-02-20 10:42:03       34 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-20 10:42:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-20 10:42:03       106 阅读
  3. 在Django里面运行非项目文件

    2024-02-20 10:42:03       87 阅读
  4. Python语言-面向对象

    2024-02-20 10:42:03       96 阅读

热门阅读

  1. Python爬虫知识图谱

    2024-02-20 10:42:03       51 阅读
  2. 函数——递归3(c++)

    2024-02-20 10:42:03       50 阅读
  3. 幸运的数字

    2024-02-20 10:42:03       61 阅读
  4. html table表格动态显示

    2024-02-20 10:42:03       52 阅读
  5. 力扣刷题-290.单词规律

    2024-02-20 10:42:03       56 阅读
  6. Ubuntu 上安装 Redis

    2024-02-20 10:42:03       44 阅读
  7. 计算机网络-H3C网络端口基础信息与配置

    2024-02-20 10:42:03       55 阅读
  8. Linux修改文件名常见的三种方式

    2024-02-20 10:42:03       48 阅读
  9. 【Android】根据包名返回对应dpi

    2024-02-20 10:42:03       52 阅读
  10. 第7章 风险管理1

    2024-02-20 10:42:03       48 阅读
  11. jenkins自动化部署

    2024-02-20 10:42:03       44 阅读