我正试图在Windows的Qt 4.8的帮助下制作我自己的动画GUI。在开始时,我使用小部件和Qt Designer放置水平/网格/等级布局并放入普通小部件,但我发现使它们随动画框架移动并不容易。所以我切换到QGraphicsScene / QGraphicsView,它似乎更容易与动画一起使用。我会做一个简单的菜单,其中有一些主要项目,当悬停时可以看到子菜单项。关于下拉水平菜单的事情很简单。我放置了QGraphicsTextItem项目,但我仍然不明白如何连接主项目的悬停事件以显示子菜单项。任何的想法?目前,我有一个带有QGraphicsView小部件的QMainWindow,可以占用所有区域。
答案 0 :(得分:1)
您可以通过创建自己的QGraphicsTextItem
专用子类并重新实施hoverEnterEvent
和hoverLeaveEvent
方法,在悬停时显示子菜单(或执行您想要的任何操作)。
确保您已阅读setAcceptHoverEvents
文档,以便了解这些事件的生成时间和时间。