2012-07-26 4 views
2

Qt Creator를 사용하여 회로도 편집기를 만들고 있습니다. QGraphicsScene/QGraphicsView 캔버스를 가지고 회로 구성 요소의 이미지를 떨어 뜨리고 주변으로 옮기고 싶습니다.Qt 4.7.4 - QGraphicsItem pixmap에서 투명 픽셀 클릭 가능 (hit box 확장)

현재 pixmap 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

굉장! 나는 잠시 동안 그렇게하려고 노력했다. 도와 주셔서 감사합니다! –