一、Scene是一個場景,View是一個視野。若是視圖大於場景時,場景在中間部分顯示[若是不設置視圖的Alignment屬性];若是視圖小於場景,則只能看到場景的一部分,可是會自動提供卷滾條在整個場景中移動,同時也能夠直接用鼠標拖動邊框改變widget的大小code
二、實例:新建一個QT GUI程序,選擇基類Widget,取消建立界面。修改main.cppblog
2.一、實例1:get
#include "widget.h" #include <QApplication> #include <QGraphicsView> #include <QGraphicsScene> int main(int argc, char *argv[]) { QApplication a(argc, argv); QGraphicsScene scene; scene.addText("I love Qt programming", QFont("Times", 22, QFont::Bold)); QGraphicsView view(&scene); view.show(); return a.exec(); }
分析:場景大小=視圖大小:中間徹底顯示[上下居中]io
#include "widget.h" #include <QApplication> #include <QGraphicsView> #include <QGraphicsScene> int main(int argc, char *argv[]) { QApplication a(argc, argv); QGraphicsScene scene; scene.addText("I love Qt programming", QFont("Times", 22, QFont::Bold)); QGraphicsView view(&scene); view.setAlignment(Qt::AlignLeft | Qt::AlignTop); // view.show(); return a.exec(); }
分析:場景大小=視圖大小:設置左上對齊顯示class
#include "widget.h" #include <QApplication> #include <QGraphicsView> #include <QGraphicsScene> int main(int argc, char *argv[]) { QApplication a(argc, argv); QGraphicsScene scene; scene.addText("I love Qt programming", QFont("Times", 22, QFont::Bold)); QGraphicsView view(&scene); view.setAlignment(Qt::AlignLeft | Qt::AlignTop); // view.resize(20, 80); view.show(); return a.exec(); }
分析:場景大小大於視圖大小:只能看到一部分場景,可是會自動提供滾條用來轉換視圖gc