0
我正在一個項目,在那裏我使用QGraphicsScene
,QGraphicsViwe
,QGraphicsItem
。我想在QGraphicsItem::paint
之前做一些計算。之前QGraphicsItem ::塗料將被稱爲
那麼有沒有辦法在QGraphicsItem::paint
之前做點什麼?
預先感謝您!
我正在一個項目,在那裏我使用QGraphicsScene
,QGraphicsViwe
,QGraphicsItem
。我想在QGraphicsItem::paint
之前做一些計算。之前QGraphicsItem ::塗料將被稱爲
那麼有沒有辦法在QGraphicsItem::paint
之前做點什麼?
預先感謝您!
QGraphicsView
具有功能showEvent()
,如果您覆蓋它,它將在項目的繪製函數之前被調用。你可以通過調用scene()
函數來獲得你的場景,之後你可以得到所有的項目。
它只是在'paint'函數的開頭做了什麼區別? – cmannett85 2013-05-11 21:07:20
@ cmannett85 - 它有缺點,例如,每次執行paintEvent時都必須包含它。可悲的是,似乎沒有太多的選擇。也許子類化'QGraphicsScene' ... – dtech 2013-05-11 21:10:04
我可以在'paint'中做到這一點,但它不會有效,每次調用paint時都必須做同樣的事情。這就是爲什麼我正在尋找另一種方式。 – nabroyan 2013-05-11 21:14:13