2012-07-26 65 views
2

我正在使用Qt Creator創建電路原理圖編輯器。我有一個QGraphicsScene/QGraphicsView畫布,我想將電路元件的圖像放在上面並移動。Qt 4.7.4 - 使QGraphicsItem pixmap中的透明像素可點擊(展開hitbox)

我目前正在使用一個像素圖QGraphicsItem並將其添加到畫布並使其可移動。當您直接點擊符號的線條時,此功能非常有用,但是當點擊圖像中的透明區域時,符號不會移動。

有沒有辦法擴大點擊框/鼠標區域,使這些透明區域的響應與其他區域對符號的響應相同?以下是我如何添加圖像。 (我需要圖像透明,使其他符號可見後面/前面)

QGraphicsItem* b = canvas.addPixmap(QPixmap(":/images/ground2.gif")); 
b->setFlag(QGraphicsItem::ItemIsMovable); 
b->setPos(qrand()%int(canvas.width()),qrand()%int(canvas.height())); 

所有幫助非常感謝!謝謝! Josh

回答

2

您可以撥打QGraphicsPixmapItem::setShapeMode(QGraphicsPixmapItem::BoundingRectShape)將項目對待矩形。

+0

太棒了!我正在嘗試做這樣的事情一段時間!謝謝您的幫助! – 2012-07-27 03:11:02