1.单独一个widgt如果mouseMove不执行需要设置setMouseTracking(true);
2.如果有子窗口,需要子窗口也设置setMouseTracking(true);否则子窗口区域捕获不到鼠标移动
3.子窗口重写了mouseMoveEvent,需要在函数结尾调用父类的mosueMoveEvent,不然会在子窗口被截获
4.对于一些特殊的窗口本身就带好几层窗口,需要把每一层都设置setMouseTracking(true);
例如QScrollWidget
-
ui->scrollArea->setMouseTracking(true);
-
ui->scrollArea->widget()->setMouseTracking(true);