0
표준 QGraphicsView 및 QGraphicsScene을 사용하고 있지만 ImagePixmapItem에서 마우스 이벤트를 사용할 수 있도록하기 위해 QGraphicsPixmapItem을 자신의 ImagePixmapItem으로 서브 클래 싱했습니다.사용자 지정 QGraphicsItem을 만들 때 마우스 이벤트를 가로 채기
이러한 이벤트를 캡처하려면 무엇을해야합니까? 다음과 같은 몇 가지 기능을 재정의했습니다.
void ImagePixmapItem::mousePressEvent(QGraphicsSceneMouseEvent *event){
qDebug("hello");
}
void ImagePixmapItem::wheelEvent (QGraphicsSceneWheelEvent * event){
qDebug("Print this line if catch a wheelEvent");//this is never printing
}
그러나 이러한 qDebug 문은 콘솔에 인쇄되지 않습니다. 내 장면이나 그래픽 뷰에 대해 다른 것을 변경해야합니까? ImagePixmapItem의 생성자에서 몇 가지를 추가했습니다.
setAcceptHoverEvents(true);
setFlag(QGraphicsItem::ItemIsSelectable,true);
하지만 아무런 성과가 없습니다.
이 항목을 {{QGraphicsScene}}에 어떻게 추가하고 있는지 보여줄 수 있습니까? – Whatang