でホバー入力イベントとホバー離脱イベントをキャプチャするのに問題がありますQGraphicsRectItem
。
私はこのオブジェクトをサブクラス化し、hover enter および hover leave ハンドラーを再実装しました... または、少なくとも実装したと思います。また、コンストラクターでホバー イベントの受け入れを true に設定します。
ただし、イベントが発生することはありません。ハンドラ内のブレークポイントはヒットしません。
クラスは次のとおりです。
#include "qhgraphicsrectitem.h"
QhGraphicsRectItem::QhGraphicsRectItem(QGraphicsRectItem *parent) :
QGraphicsRectItem(parent)
{
setAcceptHoverEvents(true);
setAcceptsHoverEvents(true);
}
void QhGraphicsRectItem::hoverEnterEvent(QGraphicsSceneHoverEvent *event) {
oldBrush = brush();
setBrush(QBrush(QColor((oldBrush.color().red() + (0.5 * (255-oldBrush.color().red()))),(oldBrush.color().green() + (0.5 * (255-oldBrush.color().green()))),(oldBrush.color().blue() + (0.5 * (255-oldBrush.color().blue()))))));
}
void QhGraphicsRectItem::hoverLeaveEvent(QGraphicsSceneHoverEvent *event) {
setBrush(oldBrush);
}
私が間違っているのは何ですか?