一、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