我有一个比较笨的方法:
1.继承类QMenu,然后在新类中自定义三个私有变量:一个QList<QAction*>类型的数组变量,用于保存这个菜单的动作,再定义 一个整形变量max=5,设定显示最大动作数为5,另一个整形变量记录当前显示的位置,比如int now。
2.除正常添加Action进入这个菜单外,再添加两个特殊的Action:向上的箭头和向下的箭头
3.点击向上箭头会使now-1,单击向下箭头使now+1,并作相应的Action添加删除操作。
4.楼主可以再设定一定的函数控制箭头(比如now=0时向上箭头隐藏等)。
希望能对楼主有一定帮助