一、思路
使用Qt的Graphics View Framework可以非常容易实现翻转的效果。该框架中的item可以通过设置QGraphicsRotation实现沿x轴、y轴和z轴(垂直于屏幕)方向上的旋转。再配合上动画便能达到上图的效果。
二、关键代码
1.既然是基于图形视图框架,那view是必不可少的。从基类中派生出我们的视图类FlipView:
FlipView : public QGraphicsView
在这个demo中视图和场景都不是主角。场景无需做其他设置,视图也只是做了一些简单的设置即可。
FlipView::FlipView(QWidget *parent):QGraphicsView(parent)
{
//场景
m_pScne = new QGraphicsScene();
this->setScene(m_pScne);
//item
m_picture = new Picture();
m_pScne->addItem(m_picture);
//设置
setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
setVerticalScrollBarPolicy(Qt::Scr