Qt:整体可拖动窗口
来源:互联网 发布:迪杰斯特拉算法伪代码 编辑:程序博客网 时间:2024/06/07 04:56
头文件:
mainwindow.h
#ifndef MAINWINDOW_H#define MAINWINDOW_H#include <QMainWindow>#include <QtGui>namespace Ui {class MainWindow;}class MainWindow : public QMainWindow{ Q_OBJECTpublic: explicit MainWindow(QWidget *parent = 0); ~MainWindow();private: Ui::MainWindow *ui; void mousePressEvent(QMouseEvent *event);//按下 void mouseMoveEvent(QMouseEvent *event);//移动 void mouseReleaseEvent(QMouseEvent *event);//抬起private: bool m_draging;//是否拖动 QPoint m_startPostion;//拖动前鼠标位置 QPoint m_framPostion;//窗体的原始位置};#endif // MAINWINDOW_H源文件:
main.cpp
#include "mainwindow.h"#include <QApplication>int main(int argc, char *argv[]){ QApplication a(argc, argv); MainWindow w; w.show(); return a.exec();}mainwindow.cpp
#include "mainwindow.h"#include "ui_mainwindow.h"MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow){ ui->setupUi(this); m_draging = false;//初始为false;}MainWindow::~MainWindow(){ delete ui;}void MainWindow::mousePressEvent(QMouseEvent *event){ m_draging = true; if(event->buttons() & Qt::LeftButton)//只响应鼠标左键 { m_startPostion = event->globalPos(); m_framPostion = frameGeometry().topLeft(); } QWidget::mousePressEvent(event);//调用父类函数保持原按键行为}void MainWindow::mouseMoveEvent(QMouseEvent *event){ if(event->buttons() & Qt::LeftButton) { //offset 偏移位置 QPoint offset = event->globalPos() - m_startPostion; move(m_framPostion + offset); } QWidget::mouseMoveEvent(event);//调用父类函数保持原按键行为}void MainWindow::mouseReleaseEvent(QMouseEvent *event){ m_draging = false; QWidget::mouseReleaseEvent(event);}
阅读全文
0 0
- 【QT】整体可拖动窗口
- Qt:整体可拖动窗口
- [Qt]整体拖动窗口
- Qt可拖动窗口的实现
- QT 无边框可拖动改变size窗口实现
- 【QT】无边框窗口+背景图片+用户区可拖动
- Qt重新实现QMouseEvent实现自定义窗口可拖动
- Qt实现窗口拖动
- Qt拖动程序窗口
- Qt开发-简易浏览器+无边框阴影可移动可拖动窗口代码分享
- div弹出窗口可拖动
- div弹出窗口可拖动
- div弹出窗口可拖动
- div弹出窗口可拖动
- js实现可拖动窗口
- duilib创建可拖动窗口
- QT无边框窗口拖动
- QT 鼠标拖动无标题窗口
- 单机下activemq集群配置Network of borkers
- WebView常见问题
- FTP连接服务器,显示乱码问题,解决办法
- Node.js简介
- COM初学(三) ALT组件简单入门
- Qt:整体可拖动窗口
- http://www.arduino.cn/thread-6690-1-1.html
- 《Objective-C基础教程》第14章 代码块和并发性
- 用java操作xml文件
- 中序遍历二叉树
- ORDER BY 的实现与优化
- 习题7-3 多米诺效应(The Domino Effect, ACM/ICPC World Finals 1991, UVa211)
- 谷歌中国首席工程师详解TensorFlow:从入门到不放弃 ‖ PPT
- 台大陈蕴侬、李宏毅“应用深度学习”课程(国语)