请注意,尽管场景支持几乎无限大小,但滚动条的范围不会超过整数范围(INT_MIN、INT_MAX)。 可以使用鼠标和键盘与场景中的项目进行交互。 QGraphicsView将鼠标和按键事件转化为场景事件,并转发到可视化的场景中。 二、类型成员 1、 QGraphicsView::CacheModeFlag:视图的缓存模式。视图可以在 QPixmap 中缓存预渲染的内容...
Qt的核心模块包括Qt Core、Qt GUI、Qt Widgets、Qt Network等,其中Qt GUI模块提供了QGraphicsView类用于显示和编辑图形场景。 QGraphicsView是Qt中用于显示和编辑图形场景的控件,它提供了一个二维视图,可以在其中放置和操作图形项。与其他视图控件不同的是,QGraphicsView没有默认的滚动条。这意味着当图形场景的内容...
GraphicsView框架结构主要包含三个主要的类QGraphicsScene(场景)、QGraphicsView(视图)、QGraphicsItem(图元)。QGraphicsScene本身不可见,是一个存储图元的容器,必须通过与之相连的QGraphicsView视图来显示及与外界进行交互,主要提供图元的操作接口、传递事件和管理各个图元状态,提供无变换的绘制功能(如打印);QGrap...
QGraphicsView是可滚动的窗口部件,可以提供滚动条来浏览大的场景。如果需要使用OpenGL,则可以使用QGraphics View:setViewport()函数将视图设置为QGLWidget。 视图接收键盘和鼠标的输入事件,并将它们翻译为场景事件(将坐标转换为场景的坐标)。使用变换矩阵函数QGraphicsView::matrix()可以变换场景的坐标,实现场景缩放和旋转。
1、QGraphicsScene QGraphicsScene继承自QObject,是一个管理图元的容器,与QGraphicsView合用可以在2D屏幕上显示如线、三角形、文本、自定义图元等图元。 QGraphicsScene是不可见的,只用于管理图元。为了查看场景,需要创建一个视图组件。 一个场景分为三个层:图元层、前景层和背景层。场景的绘制总是从背景层开始,然...
view.show(); 1. 2. 3. 4. 5. 通过使用滚动条或调用centerOn()显式滚动到场景上的任何位置。通过传递一个点到centerOn(),QGraphicsView将滚动其视口以确保该点位于视图中央。如果想要确保某个区域可见(但不一定居中),可以调用ensureVisible()代替。
视口部件是一个滚动区域,它提供了滚动条以对大场景进行浏览。为了使用OpenGL,你应该调用QGraphicsView::setViewport()来把一个QGLWidget设为视口。视图从键盘,鼠标接收输入事件,在发送这些事件到场景之前,会对这些事件进行适当的翻译(把事件坐标转换成对应的场景坐标)。利用转换矩阵,QGraphicsView::matrix(),视图可变换...
视口部件是一个滚动区域,它提供了滚动条以对大场景进行浏览。为了使用OpenGL,你应该调用QGraphicsView::setViewport()来把一个QGLWidget设为视口。视图从键盘,鼠标接收输入事件,在发送这些事件到场景之前,会对这些事件进行适当的翻译(把事件坐标转换成对应的场景坐标)。
QGraphicsView提供了视图部件,将一个场景中的内容显示出来。你可以附加多个视图到同一个场景,从而针对同一数据集提供几个视口(viewport)。该视图部件是一个滚动区域(scroll area),为大型场景浏览提供滚动条。如果要启用OpenGL支持,可通过调用QGraphicsView::setViewport(),将一个QGLWidget设置为视口。
视口部件是一个滚动区域,它提供了滚动条以对大场景进行浏览。为了使用OpenGL,你应该调用QGraphicsView::setViewport()来把一个QGLWidget设为视口。视图从键盘,鼠标接收输入事件,在发送这些事件到场景之前,会对这些事件进行适当的翻译(把事件坐标转换成对应的场景坐标)。