我试图找到一种方法来设置不同颜色的菜单项。PyQT QAction/QMenu颜色
因此,举例来说,网络指南是蓝色的,电子邮件支持是红色的,1.0版是透明的。
我看了一会儿,想了解如何做到这一点,并试用了Qlabel和QWidgetAction,但这似乎只是作为文本,而不像动作一样。
我有一种感觉,这是更痛苦,那么它是值得的,但是我以为我会把它扔在那里一切。
这是我怎么有样式表和操作设置:
self.setStyleSheet("""
QMenuBar {
background-color: rgb(49,49,49);
color: rgb(255,255,255);
border: 1px solid ;
}
QMenuBar::item {
background-color: rgb(49,49,49);
color: rgb(255,255,255);
}
QMenuBar::item::selected {
background-color: rgb(30,30,30);
}
QMenu {
background-color: rgb(49,49,49);
color: rgb(255,255,255);
border: 1px solid ;
}
QMenu::item::selected {
background-color: rgb(30,30,30);
}
""")
self.XactionHelpFAQ = QtGui.QAction('Web Guide', self)
self.XactionHelpEmail = QtGui.QAction('Email Support', self)
self.XactionHelpVersion = QtGui.QAction('Version 1.0', self)
self.Xmenubar = QtGui.QMenuBar(self)
self.Xmenubar.setObjectName('menubar')
self.Xmenubar.setGeometry(QtCore.QRect(0, 0, 684, 21))
self.Xmenubar.setSizeIncrement(QtCore.QSize(0, 0))
self.Xmenubar.setDefaultUp(False)
self.XmenuHelp = QtGui.QMenu('Help', self.Xmenubar)
self.XmenuHelp.addAction(self.XactionHelpFAQ)
self.XmenuHelp.addAction(self.XactionHelpEmail)
self.XmenuHelp.addAction(self.XactionHelpVersion)
样式表,你申请样式表添加到包含MenuBar和Menu的Widget,但不包含“self.Xmenubar”和“self.XmenuHelp”对象。尝试使用'self.Xmenubar.self.setStyleSheet(...)'和'self.XmenuHelp.setStyleSheet(...)'。为了改进你的代码,你可以简单地将整个样式表设置为你的'QApplication'对象,这样你就可以确定你的样式表应用于所有Qt对象。 – SyedElec
良好的通话,现在我的第二个窗口没有相同的菜单栏样式表:) 谢谢,这是真正的烦人的这个用户界面的东西。 –
是的,我确认:) – SyedElec