Qt 隐藏标题栏可移动升级版
来源:互联网 发布:武汉seo公司jw100 编辑:程序博客网 时间:2024/05/17 22:16
在最出的时候,在Qt程序隐藏标题栏的情况下,实现界面可拖拽移动,是鼠标在在程序界面的任意位置都可以,现在这个版本是需要鼠标在程序界面的特定位置开可以
上代码
static QPoint last(0,0);void Display::mousePressEvent(QMouseEvent *event){ if(event->y()<50) { last = event->globalPos(); qDebug()<<event->y(); }}void Display::mouseMoveEvent(QMouseEvent *event){ if(event->y()<50) { int dx = event->globalX() - last.x(); int dy = event->globalY() - last.y(); last = event->globalPos(); move(x()+dx, y()+dy); }}void Display::mouseReleaseEvent(QMouseEvent *event){ if(event->y()<50) { int dx = event->globalX() - last.x(); int dy = event->globalY() - last.y(); move(x()+dx, y()+dy); }}
其实就是加了一层判断,例如代码中的例子是在点击程序界面上面50个像素的区域里面才可以移动,不然是没有系哦啊过的
下面是加了宏定义的代码
<pre name="code" class="cpp">#define TITLESIZE 25
static QPoint last(0,0);void Display::mousePressEvent(QMouseEvent *event){ if(event->y()<TITLESIZE) { last = event->globalPos(); }}void Display::mouseMoveEvent(QMouseEvent *event){ if(event->y()<TITLESIZE) { int dx = event->globalX() - last.x(); int dy = event->globalY() - last.y(); last = event->globalPos(); move(x()+dx, y()+dy); }}void Display::mouseReleaseEvent(QMouseEvent *event){ if(event->y()<TITLESIZE) { int dx = event->globalX() - last.x(); int dy = event->globalY() - last.y(); move(x()+dx, y()+dy); }}
2 0
- Qt 隐藏标题栏可移动升级版
- QT 隐藏标题栏 窗口移动 鼠标事件
- qt实现无标题栏的可移动窗体
- qt实现无标题栏透明可移动窗口
- Qt隐藏标题栏
- Qt隐藏标题栏
- QT 标题栏隐藏可拖拽
- Qt 获取光标 隐藏标题栏
- QT无标题栏窗体移动
- QT无标题栏移动窗体
- 隐藏标题栏后窗体如何移动
- Winform隐藏标题栏后实现窗口移动
- Qt关于隐藏标题栏的小知识
- QT无标题栏加移动窗体
- Qt去掉窗口标题栏实现移动缩放
- QT 去掉标题栏和去掉标题栏后移动窗口
- 隐藏标题栏和底部操作栏,可上下滑动显示
- 隐藏标题栏
- 《计算机组成原理》计算机的主要部件及其功能是什么?
- SpringIoc BeanDefinition载入交互过程
- 清除ViewPager+FragmentPagerAdapter的缓存
- dg的switchover
- Java并发编程:volatile关键字解析
- Qt 隐藏标题栏可移动升级版
- JNI(Java Native Interface)
- HTML
- datatables样式详解,[基于thinkPHP]多条件按钮搜索及行样式
- 修改mongodb oplog size
- mysql select into outfile 意表备份还原方式
- 如何通过远程连接服务器上的MySQL
- Object详解
- Volatile关键字详解,以及需要注意的地方