参考链接:https://stackoverflow.com/questions/43388464/rotate-whole-qwidget-by-angle
说明:
本文实现方法本质是使用QGraphics三件套,即View、Scene、Item,将QWidget控件作为Item显示,从而实现角度控制的目的,基于QGraphics框架,除了角度控制外还可以对Item进行移动、缩放等等操作。

个人觉得QGraphics框架使用还是比较占资源和徒增代码量的,如果你的项目中只是一个非常小的控件需要旋转显示,个人还是建议继承QWidget然后实现自绘虚函数,实现旋转的目的。

1、显示效果

2、最简源代码
首先,ui设计界面中拖一个 Graphics View到你的界面中,然后mainwindows构造函数中输入如下代码:

#include <QGraphicsScene>
#include <QGraphicsProxyWidget>
#include <QPushButton>QGraphicsScene *scene = new QGraphicsScene(this);
QPushButton *button = new QPushButton();
button->setText("45度的酒");QGraphicsProxyWidget *w = scene->addWidget(button);
w->setPos(50, 50);
w->setRotation(45);
ui->graphicsView->setScene(scene);

3、相关类的了解
QGraphicsScene 称为图形场景,QGraphicsView 称为图形窗口。
QGraphicsView为图形窗口,就是可视化的界面,就如同是一台电视机的外壳;
QGraphicsScene图形场景,为电视机的屏幕,而要播放的内容是要在屏幕里显示出来的。
注:QGraphicsScene图形窗口 都有自己的无视觉外观,它只管理项目。你需要创建一个QGraphicsView图形视图 加载 部件可视化的场景。
QGraphicsScene学习链接: https://blog.csdn.net/wishfly/article/details/79356053
QGraphicsView学习链接:https://blog.csdn.net/qq_34139994/article/details/105301214

其他推荐内容:

  • qt电池控件设计:https://blog.csdn.net/weixin_42887343/article/details/113932145
  • QWidget控件拖动:https://blog.csdn.net/weixin_42887343/article/details/114384324
  • QWidget控件旋转方法:https://blog.csdn.net/weixin_42887343/article/details/115037420
  • qt柱状图控件设计:https://blog.csdn.net/weixin_42887343/article/details/115124178
  • qt淡化提示框设计:https://blog.csdn.net/weixin_42887343/article/details/109303972
  • qt之led(点阵)控件类设计:https://blog.csdn.net/weixin_42887343/article/details/115348953

QWidget旋转方法相关推荐

  1. XNA中三维空间物体的几种旋转方法

    通过绕三个坐标轴的旋转之和. X.Y.Z分别描述绕三个坐标轴的旋转角度(0~360).这三个角度称为欧拉角.绕X轴旋转的角称为倾斜角(pitch),绕Y轴旋转的角称为翻滚角(head或yaw),绕Z轴 ...

  2. Unity2D:物体旋转方法

    Unity2D:物体旋转方法 自身旋转 transform.Rotate() transform.rotation 绕中心旋转 transform.RotateRound() 自身旋转 transfo ...

  3. Unity常用旋转方法

    获取Unity中Inspecttor面板上的Rotation的值:transform.eulerAngles 获取两个物体之间的夹角: 1.Vector3.Angle(transform.forwar ...

  4. Android实现屏幕旋转方法

    本文实例总结了Android实现屏幕旋转方法.分享给大家供大家参考.具体如下: 在介绍之前,我们需要先了解默认情况下android屏幕旋转的机制: 默认情况下,当用户手机的重力感应器打开后,旋转屏幕方 ...

  5. Unity的几种移动和旋转方法

    Unity的几种移动和旋转方法 Unity的移动 基础框架 匀速移动 变速移动 自定义变速运动 最终代码: Unity的几种旋转方法 Unity的移动 在制作一款游戏的时候,经常需要对物体的位置进行移 ...

  6. android js 双指事件,JS实现移动端双指缩放和旋转方法

    JS实现移动端双指缩放和旋转方法 发表于 2020-2-25|标签javascript js实现移动端双指缩放和旋转,具体代码如下所示: ```javascript var initHeading = ...

  7. css设置三角形的旋转方法2以及箭头三角形的设置和旋转

    shttps://blog.csdn.net/weixin_52984349?spm=1011.2266.3001.5343 这是上次我们设置三角形以及旋转方法的地址,又想看的小伙伴们可以去看一下,这 ...

  8. Unity_物体旋转方法归纳

    0.旋转的三种方式 1.矩阵旋转2.欧拉旋转 会造成万向节锁问题3.四元数旋转 可避免万向节锁现象 1.方法1 Transform.rotation / Transform.localRotation ...

  9. Java之~ 上传 图片压缩,阿里图片压缩,图片旋转方法工具类

    需要的jar jai_codec-1.1.3.jar,jai_core-1.1.3.jar,simpleimage-1.2.0.jar,metadata-extractor-2.3.1.jar(旋转时 ...

最新文章

  1. 想转行学软件测试要注意哪些问题
  2. Win64 驱动内核编程-25.X64枚举和隐藏内核模块
  3. 自编码器深度分析+定制特征描述子构建初探
  4. More C++ Idioms
  5. 揭秘孙小小《PPT演示之道》
  6. 如何以管理员方式管理文件
  7. IDC发布人工智能白皮书:信息流引领人工智能新时代
  8. steam+linux+64+fedora,在fedora中安装steam游戏平台
  9. 基于Nginx搭建RTMP-HLS视频直播服务器(推流+拉流)
  10. 把Excel转换成word文档有什么简单的方法
  11. windows免安装版mysql
  12. 压缩pdf文件到特定大小,pdf格式文件如何压缩到最小
  13. 游戏服务器——中心服
  14. 程序员调试能力和相关书籍
  15. python数据分析-matplotlib可视化
  16. APP自动化测试框架搭建(八)--ATX Server2多设备集群环境搭建
  17. 第十章 进程间的通信 之 Java/Android多线程开发(二)
  18. Halcon实用:焊点检出设计思路
  19. 电脑文件软件搬家迁移十大工具
  20. 网址导航站路在何方???

热门文章

  1. leetcode hot100 之 子集
  2. 调用开放接口(多个系统间的数据传输)
  3. 上大学后才知道的14件事!!!
  4. 简易的解决方式linker command failed with exit code 1 (use -v to see invocation)
  5. 这才是我要的工作!(强杀伤,慎入!)
  6. Eclipse知识点精粹
  7. 编程猫python讲师面试_【编程猫工资|编程猫待遇怎么样】-看准网
  8. 标量、矢量、矩阵的求导归纳
  9. 哪些企业必须要注册35类商标?
  10. 2652: 今夕何夕