我正在使用QGraphicsScene,我想創建gui元素。Qt QGraphicsScene像容器的動態GUI元素
我該如何創建一個列表容器,即遊戲環境中的庫存?
看到這裏
對於我的意思的例子。底部有一個庫存小部件,可以動態填充。
是否有任何容器類像標準列表小部件,但爲QGraphicsScene而不是?
現在我可以看到的唯一方法是繪製一個「矩形」並在其上面手動繪製和管理「正方形」......這不會是一個容器。
我正在使用QGraphicsScene,我想創建gui元素。Qt QGraphicsScene像容器的動態GUI元素
我該如何創建一個列表容器,即遊戲環境中的庫存?
看到這裏
對於我的意思的例子。底部有一個庫存小部件,可以動態填充。
是否有任何容器類像標準列表小部件,但爲QGraphicsScene而不是?
現在我可以看到的唯一方法是繪製一個「矩形」並在其上面手動繪製和管理「正方形」......這不會是一個容器。
每個QGraphicItem
實際上都是一個容器,因爲每個項目都可以選擇編入QGraphicsItem
。當你這樣做時,父母會影響其所有孩子......如果父母被移動,孩子就會隨之移動。如果在父級上設置了變換,可視性或不透明度,則這些更改也適用於子級。
基本上,你的理解是正確的;您將創建一個繪製容器大綱的父項QGraphicsItem
,然後您將擁有各自繪製其圖標或任何適當項目的子項。
或者,您可以使用QGraphicsScene
中的小部件,因此所有基於小部件的容器都可用。如果這是您想要去的路線,那麼請看QGraphicsWidget
課程。
這是一個複雜的主題,但希望這會讓你開始。
很酷,我在看QGraphicsWidget,添加一個包含QGraphicsWidgets的QGraphicsLinearLayout ...但我想添加QGraphicsItems。任何想法如何? – ovg
好的,我明白了。我只是分類QGraphicsWidget,添加了一個QGraphicsLinearLayout,然後添加其他項目。沒有我希望的那麼優雅,但確定。 – ovg
對於場景中小部件外觀的控制比對自定義圖形項目的控制要少,但它們確實很方便。 – goug