zoukankan      html  css  js  c++  java
  • Qt之去除窗口的标题栏、通过鼠标移动窗口

    设置标题栏图标,位置与大小示例

    #include<QApplication>
    #include<QWidget>
    #include<QDebug>
    #include"mywidget.h"
    int main(int argc,char **argv)
    {
        QApplication app(argc,argv);
        //功能新的需求:不再使用框架提供的窗口,自定义一个窗口;
        //派生类;
        MyWidget w;  //MyWidget类继承于基类QWidget类;
        w.show();
        return app.exec();
    }
    
    
    //------------ MyWidget.h -------------------
    #ifndef MYWIDGET_H
    #define MYWIDGET_H
    #include<QMouseEvent>
    #include <QWidget>
    
    class MyWidget : public QWidget
    {
        Q_OBJECT
    public:
        explicit MyWidget(QWidget *parent = 0);
        void mousePressEvent(QMouseEvent *ev);
        void mouseMoveEvent(QMouseEvent *ev);
        //移动窗口
        void mouseReleaseEvent(QMouseEvent *ev);
        //释放窗口
        //鼠标原始位置
        QPoint posMouseOrigin;
    
    signals:
    
    public slots:
    
    };
    
    #endif // MYWIDGET_H
    
    
    //------------ MyWidget.cpp -------------------
    #include "mywidget.h"
    #include<QDebug>
    #include<QWidget>
    #include<QPoint>
    #include<QMouseEvent>
    MyWidget::MyWidget(QWidget *parent) :
        QWidget(parent)
    {
        this->setWindowTitle("QQ ");
        this->setWindowIcon(QIcon(":/images/po.jpg"));//设置图标
        this->setWindowFlags(Qt::FramelessWindowHint);//去掉标题栏
        this->setGeometry(QRect(950, 55, 350, 250));//可设置窗口显示的方位与大小this->setWindowFlags(Qt::FramelessWindowHint); //去掉标题栏;  } 
    
    //获取鼠标的按下操作 
    void MyWidget::mousePressEvent(QMouseEvent *ev) 
    { 
      this->posMouseOrigin = QCursor::pos(); //cursor是一个光标类;  
    } 
    
    //获得鼠标移动的操作 
    void MyWidget::mouseMoveEvent(QMouseEvent *ev) 
    { 
      QPoint ptMouseNow = QCursor::pos(); 
      QPoint ptDelta = ptMouseNow - this->posMouseOrigin; 
      move(this->pos() + ptDelta); posMouseOrigin = ptMouseNow; 
    } 
    
    //获得鼠标的释放操作;
    void MyWidget::mouseReleaseEvent(QMouseEvent *ev) 
    { 
    }
  • 相关阅读:
    web 安全问题(二):XSS攻击
    web 安全问题(一):CSRF 攻击
    关于阅读源码
    vue 阅读一【待完结】
    【转】服务器添加新用户用ssh-key 登录,并禁用root用户 密码登录
    sass & compass 实战录
    浏览器兼容性总结
    常用的一个cookie 对象,还有path 兼容性问题
    css margin塌陷问题
    markdown 语法简要备忘
  • 原文地址:https://www.cnblogs.com/2018shawn/p/11404767.html
Copyright © 2011-2022 走看看