2010-06-13 23 views
2

Qt的圖形視圖框架功能非常強大,但我還沒有找到支持自定義圖層的方法。 在Qt中,有一個QGraphicsScene :: ItemLayer,但QGraphicsScene呈現所有項目都在此圖層中。我想要管理幾層的項目,就像Illustrator和CorelDraw一樣。 只有當前圖層中的所有項目纔會收到事件,被選中或獲取焦點等。其他圖層(不是當前圖層)不會收到所有場景事件。 使用圖層的最主要原因是我可以更清晰地編目大量項目。並且不需要將所有圖層的項目傳輸到事件中,我認爲圖形框架將會更加高效。 最後一個問題,QGraphicsView是否同時支持渲染服務器堆疊圖形場景?如果支持,我認爲「自定義層」可以通過這種方式解決。 非常感謝!如何讓Qt Graphics View Framework支持自定義圖層

回答

4

我可以看到2種方式實現項目的層次感:

  • 您可以使用QGraphicsItemGroup 組項目。
  • 或將相同「圖層」的項目放入一個不繪製任何東西的parent QGraphicsItem。
+0

非常感謝,我會嘗試QGraphicsItemGroup類。 – jnblue 2010-06-14 01:27:25

+0

沒問題。如果它適合你,如果你接受或投票回答此問題將不勝感激。 :) – 2010-06-17 17:33:25