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

这篇具有很好参考价值的文章主要介绍了Qt程序设计-无边框可移动可拖拽调整大小窗体。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

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

实现过程如下:

创建QWidget窗体,添加一个按钮控制窗体的关闭。文章来源地址https://www.toymoban.com/news/detail-827551.html

#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);
   

到了这里,关于Qt程序设计-无边框可移动可拖拽调整大小窗体的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Android开发】移动程序设计复习大纲

    一、 判断题 (共10小题,每题1分,共10分) 二、 单选题 (共10小题,每题1分,共10分) 三、 填空题 (共10小题,每空1分,共10分) 四、 简答题 (共4小题,每题10分,共40分) 五、 程序设计题 (共2小题,每空2分,共30分) 知识点: 1. Android 体系结构包含的层次及各层的特点。

    2024年02月01日
    浏览(46)
  • 基于微信小程序的移动学习平台的设计与实现

    由于APP软件在开发以及运营上面所需成本较高,而用户手机需要安装各种APP软件,因此占用用户过多的手机存储空间,导致用户手机运行缓慢,体验度比较差,进而导致用户会卸载非必要的APP,倒逼管理者必须改变运营策略。随着微信小程序的出现,解决了用户非独立APP不可

    2024年02月01日
    浏览(48)
  • 【QT】多窗体应用程序设计

    目录 1主要的窗体类及其用途 2 窗体类重要特性的设置 2.1 setAttribute()函数 2.2 setWindowFlags()函数 2.3 setWindowState()函数 2.4 setWindowModality()函数 2.5 setWindowOpacity()函数 3 多窗口应用程序的设计 3.1 主窗口设计 3.2 QFormDoc类的设计 3.3 QFormDoc类的使用 3.4 QFormTable类的设计 3.5 QFormTable类的使

    2024年01月18日
    浏览(44)
  • 【QT】MDI应用程序设计

    目录 1 MDI简介 2 文档窗口类QFormDoc的设计 3 MDI主窗口设计与子窗口的使用 3.1 主窗口界面设计 3.2 MDI子窗口的创建与加入 3.3 QMdiArea常用功能函数 3.4 MDI的信号         传统的应用程序设计中有多文档界面(Multi-documentInterface,MDI)应用程序,Qt为设计 MDI应用程序提供了支持。

    2024年01月25日
    浏览(39)
  • 案例103:基于微信小程序的移动网赚项目设计与实现

    文末获取源码 开发语言:Java 框架:springboot JDK版本:JDK1.8 数据库:mysql 5.7 开发软件:eclipse/myeclipse/idea Maven包:Maven3.5.4 小程序框架:uniapp 小程序开发软件:HBuilder X 小程序运行软件:微信开发者 目录 前言 系统展示 用户功能模块的实现 用户注册登录界面 首页界面 任务界

    2024年01月22日
    浏览(37)
  • 基于微信小程序的移动学习平台的设计与实现_kaic

    摘要 本项目将要设计及制作一个移动学习平台微信小程序,该小程序的主要功能是为用户提供一个可在线观看关于数学和英语的视频学习资料的平台。小程序的设计及实现过程中所使用到的软件工具包括微信开发者工具(小程序编写及后台云数据库)、思维导图工具(页面交

    2024年02月12日
    浏览(49)
  • 【计算机论文指导】基于微信小程序的移动学习平台的设计与实现

    题目:基于微信小程序的移动学习平台的设计与实现 摘 要 由于APP软件在开发以及运营上面所需成本较高,而用户手机需要安装各种APP软件,因此占用用户过多的手机存储空间,导致用户手机运行缓慢,体验度比较差,进而导致用户会卸载非必要的APP,倒逼管理者必须改变运

    2024年02月04日
    浏览(52)
  • 基于JavaWeb+SSM+Vue微信小程序的移动学习平台系统的设计和实现

    第1章 绪论 1 1.1 课题背景 1 1.2 课题意义 1 1.3 研究内容 2 第2章 开发环境与技术 3 2.1 MYSQL数据库 3 2.2 JSP技术 3 2.3 SSM框架 4 2.4 微信开发者工具 4 第3章 系统分析 6 3.1 可行性分析 6 3.1.1 技术可行性 6 3.1.2 经济可行性 6 3.1.3 操作可行性 6 3.2 系统流程 7 3.2.1 操作流程 7 3.2.2 登录流程

    2024年02月03日
    浏览(37)
  • QT程序设计多人聊天室(基于QT、sqlite3、TCP/IP)

    目录 技术路线 效果展示 程序主体 sqoperator.h mylogin.h myenroll.h chatinterface.h tips.h myapp.h ******************* sqoperator.cpp mylogin.cpp myenroll.cpp chatinterface.cpp tips.cpp myapp.cpp main.cpp widget.h widget.cpp main.cpp QT程序设计、sqlite数据库调用、TCP/IP客户端与服务端的搭建 通过次程序代码,可以学习如

    2024年02月09日
    浏览(59)
  • Qt之界面 自定义标题栏、无边框、可移动、缩放

    注意:由于需要调用 Windows 上的头文件与库,所以不能跨平台,只支持 Windows 系统。如果想要跨平台,可以使用鼠标等事件实现,具体百度搜索参考下 titleBar.h titleBar.cpp widget.h widget.cpp mousePressEvent 之前,我们将界面移动的事件写在主界面里面,这会有一个问题,一般情况下,

    2024年02月05日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包