qt无边框窗体的移动
无边框窗体的移动
this->setWindowFlags(Qt::FramelessWindowHint);//设置窗体为无边框
鼠标移动窗体移动涉及到三个事件分别是:鼠标按下、鼠标移动、鼠标松开,这三个事件在Qwidget中是虚函数
在QWidget中找到可以通过帮助–>搜索QWidget–>protected Functions中找到,复制到widget.h中
class Widget : public QWidget
{
Q_OBJECT
public:
explicit Widget(QWidget *parent = 0);
~Widget();
void mouseMoveEvent(QMouseEvent *event);
void mousePressEvent(QMouseEvent *event);
void mouseReleaseEvent(QMouseEvent *event);
private:
Ui::Widget *ui;
QPoint z;
};
widget.cpp
void Widget::mouseMoveEvent(QMouseEvent *event)
{
QWidget::mouseMoveEvent(event);
QPoint y = event->globalPos();//鼠标相对于桌面左上角的位置,鼠标全局位置
QPoint x = y - this->z;this->move(x);
}
void Widget::mousePressEvent(QMouseEvent *event)
{
QWidget::mousePressEvent(event);
QPoint y = event->globalPos();//鼠标相对于桌面左上角的位置,鼠标全局位置
QPoint x = this->geometry().topLeft();//窗口左上角相对于桌面左上角的位置,窗口位置
this->z = y - x;//定值,不变的
}
void Widget::mouseReleaseEvent(QMouseEvent *event)
{
QWidget::mouseReleaseEvent(event);
this->z = QPoint();//鼠标松开的时候,将z值初始化
}
qt无边框窗体的移动相关推荐
- Qt无边框窗体(Windows)
Qt无边框窗体Windows篇 去掉标题栏和边框 实现拖拽功能 还原窗体功能 注意点 我们可以做的更好 添加阴影 亚克力面板效果 结语 去掉标题栏和边框 首先第一步我们要通过设置系统绘制的边框消失 s ...
- QT无边框窗体改变大小 很顺畅
近期,做项目用到无边框窗体,令人蛋疼的是无边框窗体大小的改变要像右边框那样,上下左右四周,而且要流畅. 网上也找了些代码,发现居然还要连接到windows事件,这显然不合常理,后来自己新建了demo, ...
- 无边框窗体和用户控件以及权限
无边框窗体: 就是吧窗体的边框去掉,然后自己做按钮设置功能. 无边框窗体的移动: 将下面代码直接复制粘贴,将窗体的鼠标按下事件的方法改成下面方法的名字就可以直接使用 1 //窗体移动API 2 [Dl ...
- 再谈无边框窗体的操作
本文介绍操作无边框窗体的其他几个方面的技巧. 设置浮动菜单 通常情况下,在无边框窗体中不能设置菜单.如果在无边框窗体中设置了菜单,运行时窗体上就会出现标题栏.那么,是否在无边框窗体中就不能使用菜单了呢 ...
- 无边框窗体移动的方法
文章目录 1 无边框窗体移动的方法 1.1 无边框窗体移动的方法 1 无边框窗体移动的方法 1.1 无边框窗体移动的方法 当我们把窗体设置为无边框后,会发现用鼠标拖动窗体时是没有反应的,我们需要在窗体 ...
- 通过调用API函数实现的无边框窗体的拖拽,比判断坐标更快捷
在winform程序中,有时会选择边框设计会none,但是这样就不能拖拽窗体移动 解决方案有二: 1,判断坐标控制拖拽 2.利用API函数, 下面介绍利用API函数,方便,快捷 #region 移动无 ...
- 01.WPF中制作无边框窗体
[引用:]http://blog.csdn.net/johnsuna/article/details/1893319 众所周知,在WinForm中,如果要制作一个无边框窗体,可以将窗体的FormBor ...
- 【C#】使用DWM实现无边框窗体阴影或全透窗体
1.无边框窗体阴影,win7(需要开启Aero效果)及以上系统 public class LdwmForm : Form{public LdwmForm(){Initialize();}/// < ...
- 拖动无边框窗体(VB6代码)
简单代码片段,记录一下备用. Option Explicit Dim mX As Long, mY As Long Private Sub Form_MouseDown(Button As Integ ...
- C# WinForm 无边框窗体,加阴影、拖动、改变大小等功能完美实现(自认为是完美的 ^=^)
关于Winform的无边框窗体实现,网络上有很多大牛文章,这里不赘述.我也是参考网络上的思路,在使用别人的代码基础上,发现和遇到了很多小问题,所以做了改造,以下做个记录,也是给需要的人提供一点思路,如 ...
最新文章
- 制作灵动单片机MM32F3277 测试版
- 异构平台同步(mysql--oracle)
- Pandas 表格样式设置指南,看这一篇就够了!
- nginx 内置变量
- 如果reporting server出现“无法安装打印控件”的处理方法。
- cla c 语言编译器,第九章 CLA_C2000_C_Compiler.pdf
- 第七章 递推与递归 第3课 攀天梯(ladder) --《聪明人的游戏:信息学探秘.提高篇》
- 撬动百亿VRAR产业,让VR们“造”起来
- Spark算子:RDD行动Action操作(2)–take、top、takeOrdered
- 五子棋等级考试软件的开发(五)
- Jieba库与wordcloud库的学习汇总
- Mac m1安装jmeter
- 什么样的人适合当领导
- 今日网易邮箱126无法访问
- 91461452469259f108dee0593bece4cb
- [读书笔记]精力管理(The Power of Full Engagement)
- LeetCode T46 Permutations
- PXE+Kickstart 无人值守装机
- 商品添加-选择商品类型自动加载商品属性
- ROS中的坐标与坐标系转换
热门文章
- BZOJ 1778: [Usaco2010 Hol]Dotp 驱逐猪猡
- 校内校园网络技术标书(三少原创)
- 聚类数据生成函数--make_blobs()
- 如何区分PNP型和NPN型?
- 【论文阅读】Iterative Answer Prediction with Pointer-Augmented Multimodal Transformers for TextVQA
- 3D扁平化高绩效五项管理PPT模板
- html5海洋模板,海洋cms模板 海洋cms影视模板 海洋cms模板简洁
- 基于java springboot android 安卓记账本源码(毕设)
- 无Internet访问权限-已解决
- 游戏开发需要具备哪些技术?