QT实现无边框的可移动窗体
2013-10-19 22:52
246 查看
无边框窗体不可移动窗口
在相应的界面类中添加2个鼠标事件函数,实现窗口移动效果
首先在.h文件中添加3个保存坐标的变量,然后添加下面的代码就可以实现移动了
QPoint
windowPos,mousePos,dPos;
拿个测试的软件看看有边框框效果图
去除边框后的效果,是不是看上去漂亮多了
int main(int argc, char *argv[]) { QApplication a(argc, argv); QTextCodec::setCodecForTr(QTextCodec::codecForLocale()); Widget w; //w.setWindowOpacity(1); w.setWindowFlags(Qt::FramelessWindowHint); //这个是widget的标题栏和边框去掉 //w.setAttribute(Qt::WA_TranslucentBackground); //这个是widget的背景弄透明 w.show(); return a.exec(); }
在相应的界面类中添加2个鼠标事件函数,实现窗口移动效果
首先在.h文件中添加3个保存坐标的变量,然后添加下面的代码就可以实现移动了
QPoint
windowPos,mousePos,dPos;
void Widget::mousePressEvent(QMouseEvent *event) { this->windowPos = this->pos(); this->mousePos = event->globalPos(); this->dPos = mousePos - windowPos; } void Widget::mouseMoveEvent(QMouseEvent *event) { this->move(event->globalPos() - this->dPos); }
拿个测试的软件看看有边框框效果图
去除边框后的效果,是不是看上去漂亮多了
相关文章推荐
- Qt实现无边框窗体的移动
- 用Qt实现窗体的无边框、可移动、透明不规则显示(需背景透明的图片)
- 用Qt实现窗体的无边框、可移动、透明不规则显示(需背景透明的图片)
- Qt之自定义界面(实现无边框、可移动)
- Qt实现当鼠标移动到窗体上,窗体由半透明变为不透明
- Qt移动无边框窗体
- Qt 无边框窗体改变大小 完美实现(全部自己实现)
- C# 无边框窗体移动 点击任务栏实现最小化与还原
- Qt 无边框、透明、可移动、的个性窗体案例详解
- Qt之无边框自定义最小化、关闭按钮并实现窗口移动
- 无边框窗体移动实现方法
- Qt 无边框窗体改变大小 完美实现
- Qt - 移动无边框窗体
- Qt 无边框、透明、可移动、的个性窗体案例详解
- QT实现无边框窗体的最小化,最大化/还原,关闭,拖动和双击最大化等功能
- qt实现无标题栏的可移动窗体
- Qt 无边框、透明、可移动、的个性窗体案例详解
- Qt 无边框、透明、可移动、的个性窗体案例详解
- Qt中实现无边框的窗体
- Qt 无边框、透明、可移动、的个性窗体案例详解