如这个图片,当活动选项由222(有下级选项)切换到它上下的选项时,它上下的选项111和555都只会显示一下被选中时的样式并不能保持,在下面几个555之间切换都是可知正常保持选中的样式的,请问各位这个是什么原因?该怎么解决
设置的qss样式表
QMenu::item:selected { background-image: url(:/image/side_menu/background/green1200.png); background-color: rgba(0, 0, 0, 0);}
部分代码:
void MainWindow::handleDownKeyPressShort()///下键短按{ if(sideMenuState == true)///当菜单显示时 { QList<QAction*> actions = sideMenuNow->actions();///获取当前菜单下的所有选项
if (actions.count() > 1)///当前菜单下选项总数>1 { /// 取消当前选项的活动状态 sideMenuNow->setActiveAction(nullptr);
if((sideActionNowNumLv[sideMenuNowLv] + 1) > (actions.count() - 1)) { sideActionNowNumLv[sideMenuNowLv] = 0; } else { sideActionNowNumLv[sideMenuNowLv] += 1; }
sideMenuNow->setActiveAction(actions[sideActionNowNumLv[sideMenuNowLv]]);
} } else///当菜单未显示时 {
}}

设置的qss样式表
QMenu::item:selected { background-image: url(:/image/side_menu/background/green1200.png); background-color: rgba(0, 0, 0, 0);}
部分代码:
void MainWindow::handleDownKeyPressShort()///下键短按{ if(sideMenuState == true)///当菜单显示时 { QList<QAction*> actions = sideMenuNow->actions();///获取当前菜单下的所有选项
if (actions.count() > 1)///当前菜单下选项总数>1 { /// 取消当前选项的活动状态 sideMenuNow->setActiveAction(nullptr);
if((sideActionNowNumLv[sideMenuNowLv] + 1) > (actions.count() - 1)) { sideActionNowNumLv[sideMenuNowLv] = 0; } else { sideActionNowNumLv[sideMenuNowLv] += 1; }
sideMenuNow->setActiveAction(actions[sideActionNowNumLv[sideMenuNowLv]]);
} } else///当菜单未显示时 {
}}
