各位高手,我做了一个弹出菜单,类似于windows的右键菜单,当鼠标停留在菜单的某个选项上时,菜单选项的图标换个新图片,然后鼠标离开该选项时图标变回原来的图片。
我是用信号和槽方法, connect(menu1,SIGNAL(hovered(QAction*)), this, changimage(QAction*));
槽函数 void changimage(QAction *num)
{
// 让菜单选项图标是鼠标未在停留在上面的图标
action[0]->setIcon(QIcon(":/pic/act0.png"));
...
if (num == action[0])
{
action[0]->setIcon(QIcon(":/pic/act1.png")); // 跟换图片
}
if (num == action[1])
{
...
}
...
}
代码完成后,鼠标在菜单上上下移动图标可以跟换,但当鼠标水平移动出菜单范围后,鼠标最后停留的选项图标没有还原。
请教各位大侠如何让,鼠标移动出菜单范围也能使菜单选项的图标还原成原来的图片。谢谢
[ 此帖被cangtiantao在2010-04-23 16:42重新编辑 ]