I can think of one way of doing so without subclassing. You may create class that will be filtering mouse events and install it on the QGraphicsView via QObject::installEventFilter,
(you can't install it onto item itself, because it is not derived from QObject). But if you go this way you will be forced to map coordinates from view to item.
IMHO subclassing QGraphicsRectItem is much more clearer and easy way. It's not that hard! You'll need to override just a few protected methods.
Bookmarks