在自定义的QGraphicsView子类中,要进行鼠标样式的修改,按照正常方法是做不到的。在QGraphicsView、QGraphicsItem中都有setCursor函数,但是QGraphicsScene中是没有的。但是经过我的一番测试,发现都不好使,达不到不想要的效果。特别是QGraphicsView中的setCursor是没有任何可见的效果的。后来找到了下面的结论,验证以后是正确的。
解决方法
在QGraphicsView子类中使用viewport()->setCursor(),才可以真正的改变鼠标的形状。同时,update()也是如此,需要调用viewport()->update()。