zoukankan      html  css  js  c++  java
  • Qt做动画旋转旋转图片

    今天看到百度首页的音乐播放有个图片可以旋转,感觉很酷就用qt做了一个类似的,关键时刻还是要发挥数学功底,静下心来,写一写,画一画,编程对数学分析能力要求还是不小的,以后要经常锻炼数学分析能力啊!


    Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
    {
    ui->setupUi(this);
    pix = new QPixmap("://1.png");
    tim = new QTimer(this);
    tim->start(30);
    setWindowFlags(Qt::FramelessWindowHint |Qt::WindowStaysOnTopHint);
    setAttribute(Qt::WA_TranslucentBackground);//支持alpha通道!!!
    setAttribute(Qt::WA_NoSystemBackground);//不自动绘制背景
    connect(tim,SIGNAL(timeout()),this,SLOT(update()));
    }

    Widget::~Widget()
    {
    delete ui;
    }

    void Widget::paintEvent(QPaintEvent *e)
    {
    static int i =0;//定义旋转度数
    i++;

    QPainter paint(this);
    paint.translate(this->width()/2,this->height()/2);//设置原点为窗口中心
    paint.rotate(i);//坐标旋转
    paint.drawPixmap(-pix->height()/2,-pix->width()/2,*pix);//经分析,应使图片中心,对应原点
    if(i >= 360)
    i = 0;//旋转度数检测
    }

     

  • 相关阅读:
    SQL SELECT DISTINCT 语句
    SQL SELECT 语句
    SQL 语法
    Linux 命令大全
    MySQL 安装
    Nginx 安装配置
    linux yum 命令
    Linux 磁盘管理
    Linux 文件与目录管理
    Linux 用户和用户组管理
  • 原文地址:https://www.cnblogs.com/lzh-Linux/p/3793638.html
Copyright © 2011-2022 走看看