qt界面旋转~笔记

Qt程序界面旋转,通常有两种方式:

方式一:

   qt需要支持旋转,在编译嵌入式qt库(如qte生成的Lib)的时候要加上-qt-gfx-transformed,-qt-gfx-linuxfb选项;

   启动Qt程序时加上参数  ./qtdemo -qws  -display "Transformed:Rot180",qtdemo 应用程序界面会整体旋转180度。

 

方式二:

    通过Qt代码实现,在Qt程序main.cpp文件中使用QGraphicsScene和QGraphicsProxyWidget类实现程序界面整体旋转,main.cpp代码如下

#include "mainwindow.h"
#include <QApplication>
#include <QStyleFactory>
#include <QTextCodec>
#include <QGraphicsView>
#include <QGraphicsProxyWidget>

int main(int argc, char *argv[])
{
      QApplication a(argc, argv);

      MainWindow w;

     QGraphicsScene *scene = new QGraphicsScene;
     QGraphicsProxyWidget *w1 = scene->addWidget(&w);
     w1->setRotation(180);  //旋转180,  参数可选0,90,180,270
     QGraphicsView *view = new QGraphicsView(scene);
     view->setWindowFlags(Qt::FramelessWindowHint);
     view->centerOn(0,0);
     view->resize(800, 480); //显示器尺寸
     view->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); 
     view->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
     view->show();


    return a.exec();
}

 

Guess you like

Origin blog.csdn.net/ggggyj/article/details/108003939