最近练习Qt,需要一个飞机在屏幕上画五边形。虽然达到的效果不是非常的理想,但是勉强还是达到了效果,欢迎大家指正。用到的飞机图片如下。

第一步:初始化,在构造函数里面,把图片向左旋转18°

// 向左旋转18°
matrix.rotate(-);
ui.label->setPixmap(QPixmap("C:\\Users\\Administrator.USER-20190313RI\\Desktop\\img\\life.png").transformed(matrix, Qt::SmoothTransformation));

第二步:在定时器里面执行如下代码

switch(flag)
{
case :
{
if (num == )
{
num = ;
flag = ;
matrix.rotate();
ui.label->setPixmap(QPixmap("C:\\Users\\Administrator.USER-20190313RI\\Desktop\\img\\life.png").transformed(matrix, Qt::SmoothTransformation));
}
int x = ui.label->x() - ;
int y = ui.label->y() - ;
ui.label->move(x, y);
num++;
break;
}
case :
{
if (num == )
{
num = ;
flag = ;
matrix.rotate();
ui.label->setPixmap(QPixmap("C:\\Users\\Administrator.USER-20190313RI\\Desktop\\img\\life.png").transformed(matrix, Qt::SmoothTransformation));
}
int x = ui.label->x() + ;
int y = ui.label->y() - ;
ui.label->move(x, y);
num++;
break;
}
case :
{
if (num == )
{
num = ;
flag = ;
matrix.rotate();
ui.label->setPixmap(QPixmap("C:\\Users\\Administrator.USER-20190313RI\\Desktop\\img\\life.png").transformed(matrix, Qt::SmoothTransformation));
}
int x = ui.label->x() + ;
int y = ui.label->y() + ;
ui.label->move(x, y);
num++;
break;
}
case :
{
if (num == )
{
num = ;
flag = ;
matrix.rotate();
ui.label->setPixmap(QPixmap("C:\\Users\\Administrator.USER-20190313RI\\Desktop\\img\\life.png").transformed(matrix, Qt::SmoothTransformation));
}
int x = ui.label->x() - ;
int y = ui.label->y() + ;
ui.label->move(x, y);
num++;
break;
}
case :
{
if (num == )
{
num = ;
flag = ;
matrix.rotate();
ui.label->setPixmap(QPixmap("C:\\Users\\Administrator.USER-20190313RI\\Desktop\\img\\life.png").transformed(matrix, Qt::SmoothTransformation));
}
int x = ui.label->x() - ;
int y = ui.label->y();
ui.label->move(x, y);
num++;
break;
}
default:
{
break;
}
}

Qt 利用飞机图片画五边形的更多相关文章

  1. Android 实现图片画画板

    本文主要讲述了Android 实现图片画画板 设计项目布局: <RelativeLayout xmlns:android="http://schemas.android.com/apk ...

  2. Qt中在图片上叠加显示文字

    Qt中在图片上叠加显示文字   QCustLabel::QCustLabel(QWidget *parent):QLabel(parent){ setPixmap(QPixmap(QString::f ...

  3. 【CSS学习笔记】初始化CSS后,写li,并利用背景图片,来完成li小图标的效果,且达到个浏览器兼容

    第一种情况 /*当标题前的图标时单独的一个点儿或者方块或者其他类似图标时,定义背景图background要放在<li>里.    在<li>中设置背景图片的尺寸,地址,不重复, ...

  4. WebGl 利用缓冲区对象画多个点

    效果: 代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...

  5. Qt Socket 收发图片——图像拆包、组包、粘包处理

    之前给大家分享了一个使用python发图片数据.Qt server接收图片的Demo.之前的Demo用于传输小字节的图片是可以的,但如果是传输大的图片,使用socket无法一次完成发送该怎么办呢?本次 ...

  6. 把图片画到画布上,适应PC和移动端

    画一张图片到画布上 <canvas id="myCanvas" width="1000px" height="200px" >您 ...

  7. qt利用QT designer构建第一个界面helloworld工程

    qt利用QT designer构建第一个界面helloworld工程原创ZJE_ANDY 发布于2017-04-07 20:25:28 阅读数 6613 收藏展开第一步:点击New Project 第 ...

  8. qt 利用 HTML 生成PDF文档,不能显示jpg图片

    利用 QPrinter 和html 生成 pdf文档 其中用html语句有显示图片的语句 但只能显示png格式的图片,不能显示jpg格式图片. 经过排查:语法,文件路径等都正确,最终在stack ov ...

  9. qt 在指定区域添加图片

    博客出处:http://www.devdiv.com/thread-39111-1-1.html 折腾了几天,终于实现了图片的淡出淡入的效果. 其实也应该是说实现了图片的淡入效果,因为淡出效果我暂时还 ...

随机推荐

  1. Network Function Virtualization: Challenges and Opportunities for Innovations

    年份:2015 ABSTRACT 最近提出了网络功能虚拟化,以提高网络服务供应的灵活性并减少新服务的上市时间. 通过利用虚拟化技术和通用的商用可编程硬件(例如通用服务器,存储和交换机),NFV可以将网 ...

  2. javassist使用全解析

    Java 字节码以二进制的形式存储在 .class 文件中,每一个 .class 文件包含一个 Java 类或接口.Javaassist 就是一个用来 处理 Java 字节码的类库.它可以在一个已经编 ...

  3. 备份数据库的shell

    #!/bin/bash #定义备份数据库名 dbname=yourdbname #定义备份数据库的用户名和密码 dbuser=yourdbuser dbpasswd=yourdbpasswd #数据库 ...

  4. Shenzhen Wanze Technology Co., Ltd.技术支持

    本网页为Shenzhen Wanze Technology Co., Ltd.团队的技术支持网址,如果在我们开发的游戏中遇到任何问题,欢迎联系我们! QQ:2535510006 邮箱:25355100 ...

  5. MongoDB的局域网连接问题

    问题前两天在本机连接虚拟机的MongoDB,总是连接拒绝 上网百度了一堆,找到一些看似解释,实则不一定管用的玩意. 自己找到一个解法是改etc/mongodb.conf文件,把bindIp的127.0 ...

  6. [LeetCode] 567. Permutation in String 字符串中的全排列

    Given two strings s1 and s2, write a function to return true if s2 contains the permutation of s1. I ...

  7. spring boot @RequestBody数据传递及解析

    @RequestBody需要接的参数是一个string化的json @RequestBody,要读取的数据在请求体里,所以要发post请求,还要将Content-Type设置为application/ ...

  8. java面试 (六)

    1 String.split(String regex), 传入的参数是正则表达式,有一些特殊字符(比如.[]()\| 等)需要转义. 2  关于枚举类型,一般用作常量,理想情况下,枚举中的属性字段是 ...

  9. Oracle Spatial图层元数据坐标范围影响R-TREE索引的ROOT MBR吗?

    Oracle Spatial的空间索引R-TREE,其实现原理为一级级的MBR(最小定界矩形).我突然想到一个问题,它的ROOT MBR是怎么确定的?是根据元数据表user_sdo_geom_meta ...

  10. git pull时 git cannot lock ref XXXXXX (unable to update local ref)错误解决方案

    git pull :  git cannot lock ref    XXXXXX (unable to update local ref) pull代码的时候出现的错误,导致代码拉不下来. 看了一下 ...