Qt QGraphicsScene 容器等动态 GUI 元素
Qt QGraphicsScene dynamic GUI elements like containers
我正在使用 QGraphicsScene,我想创建 gui 元素。
如何 I/should 我创建一个列表容器,即游戏上下文中的库存。
看这里
举例说明我的意思。底部有一个可以动态填充的库存小部件。
是否有任何容器 类 类似于标准列表小部件但用于 QGraphicsScene?
现在我能看到的唯一方法是绘制一个 'rectangle' 并在其上手动绘制和管理 'squares'...这不是容器。
每个 QGraphicItem
实际上都是一个容器,因为每个项目都可以选择作为 QGraphicsItem
的父级。当您这样做时,父项会影响其所有子项……如果父项被移动,子项也会随之移动。如果在父项上设置了变换、可见性或不透明度,则这些更改也适用于子项。
基本上,你的理解是正确的;您将创建一个绘制容器轮廓的父项 QGraphicsItem
,然后您将创建一个子项,每个子项绘制其图标或任何合适的内容。
或者,您可以在 QGraphicsScene
中使用小部件,因此所有基于小部件的容器都可用。如果那是你想走的路线,那么看看 QGraphicsWidget
class.
这是一个复杂的主题,但希望这能帮助您入门。
我正在使用 QGraphicsScene,我想创建 gui 元素。
如何 I/should 我创建一个列表容器,即游戏上下文中的库存。
看这里
举例说明我的意思。底部有一个可以动态填充的库存小部件。
是否有任何容器 类 类似于标准列表小部件但用于 QGraphicsScene?
现在我能看到的唯一方法是绘制一个 'rectangle' 并在其上手动绘制和管理 'squares'...这不是容器。
每个 QGraphicItem
实际上都是一个容器,因为每个项目都可以选择作为 QGraphicsItem
的父级。当您这样做时,父项会影响其所有子项……如果父项被移动,子项也会随之移动。如果在父项上设置了变换、可见性或不透明度,则这些更改也适用于子项。
基本上,你的理解是正确的;您将创建一个绘制容器轮廓的父项 QGraphicsItem
,然后您将创建一个子项,每个子项绘制其图标或任何合适的内容。
或者,您可以在 QGraphicsScene
中使用小部件,因此所有基于小部件的容器都可用。如果那是你想走的路线,那么看看 QGraphicsWidget
class.
这是一个复杂的主题,但希望这能帮助您入门。