9.5 QGraphicsView视图框架

网友投稿 643 2022-05-28

9.5 QGraphicsView视图框架

Qt Graphics View 用于管理交互大量定制的 2D 图形对象,提供了可视化显示对象的视图 widget,并支持缩放和旋转功能。Graphics View 使用 BSP(二元空间划分)树形,可非常快速地找到图元对象,因此即使是包含百万个图元对象的大型场景,也能实时显示。Graphics View框架包含了一个事件传播构架,允许与场景中的图元进行交互。比如:可以处理键盘事件,鼠标移动、松开、双击事件,并且可以跟踪鼠标移动。Graphics View视图本身是一个基于item的M-V架构的框架,它的每一个组件都是一个item。

Qt Graphics View框架结构主要包含三个类:场景类(QGraphicsScene)、视图类(QGraphicsView)、图元类(QGraphicsItem)。其中,场景类(QGraphicsScene)是用于管理大量图元对象的容器,视图类(QGraphicsView)是用于显示场景中的图元对象。

它们三者之间的关系:场景类相当于一张画布,图元类(QGraphicsItem)相当于画笔,在画布上绘制了各种图形后,需要将画布挂到墙壁上展示,视图类就相当于用于展示画布的这一堵墙。

示例:

QGraphicsScene *scene=new QGraphicsScene;

9.5 QGraphicsView视图框架

scene->addText("Hello, world!");

scene->addRect(0,40,100,100);

QGraphicsView *view=new QGraphicsView(scene);

view->show();

图 9-5-1 图形视图框架

容器

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:WebRTC双音多频DTMF
下一篇:关于cpu的一些知识
相关文章