我不认为这可能,但我仍然想尝试询问。 在所附的屏幕截图中,我具有嵌套菜单。
是否可以将箭头键图标更改为红色框“突出显示”?
如果未找到子菜单项,我试图将箭头键更改为加号图标。 如果找到子菜单项,则可以使用默认箭头。
答案 0 :(得分:1)
是的,您可以更改右箭头的颜色。
但是有一个技巧可以改变它。
指标的真相是"branch-closed png file"
您可以在链接页面的几乎底部看到png文件。
因此,它不能通过纯编程方式解决。
您可以自己准备照片。
,请遵循QMenu
构造函数中的代码。
self.setStyleSheet("QMenu::right-arrow{image:url(stylesheet-branch-closed-red.png);}")
注意:
stylesheet-branch-closed-red.png
是我的重命名图片。
您可以从上面的链接页面下载原始图片。
右键单击png图片并另存为名称。
此代码来自您过去的问题。
class QCustomMenu(QtGui.QMenu):
"""Customized QMenu."""
def __init__(self, title, parent=None):
super(QCustomMenu, self).__init__(title=str(title), parent=parent)
self.setup_menu()
self.setStyleSheet("QMenu::right-arrow{image:url(stylesheet-branch-closed-red.png);}")
def setup_menu(self):
self.setContextMenuPolicy(QtCore.Qt.DefaultContextMenu)
def contextMenuEvent(self, event):
no_right_click = [QAddAction]
if any([isinstance(self.actionAt(event.pos()), instance) for instance in no_right_click]):
return
pos = event.pos()
def addAction(self, action):
super(QCustomMenu, self).addAction(action)
结果就是这样。
您会不喜欢箭头的白色部分。
没问题,您可以使用自由绘制的软件将其明确删除,但我没有这样做,因为它是不必要的。