1.前言
一般直接用PyQt5做出来的界面是不美观的,我们可以利用QSS对其进行美化,现在我对右键菜单进行简单的美化,以练习QSS美化的一些知识。
关于PyQt5的右键菜单可以看一下这篇文章:https://blog.csdn.net/qq_38463737/article/details/107137381
2.美化前的右键菜单
3.开始美化
总美化代码如下
self.setStyleSheet("QMenu{background:LightSkyBlue;}" # 选项背景颜色
"QMenu{border:1px solid lightgray;}" # 设置整个菜单框的边界高亮厚度
"QMenu{border-color:green;}" # 整个边框的颜色
"QMenu::item{padding:0px 5px 0px 5px;}" # 以文字为标准,右边距文字40像素,左边同理
"QMenu::item{height:20px;}" # 显示菜单选项高度
"QMenu::item{color:blue;}"#选项文字颜色
"QMenu::item{background:white;}" # 选项背景
"QMenu::item{margin:1px 1px 1px 1px;}" # 每个选项四边的边界厚度,上,右,下,左
"QMenu::item:selected:enabled{background:lightgray;}"
"QMenu::item:selected:enabled{color:red;}" # 鼠标在选项上面时,文字的颜色
"QMenu::item:selected:!enabled{background:transparent;}"#鼠标在上面时,选项背景为不透明
"QMenu::separator{height:1px;}" # 要在两个选项设置self.groupBox_menu.addSeparator()才有用
"QMenu::separator{width:50px;}"
"QMenu::separator{background:blue;}"
"QMenu::separator{margin:0px 0px 0px 0px;}"
)
3.1美化整体右键菜单界面图解
注:这是为了好辨认前后的变化,才设计的开起来比原来还丑(我不会承认我的设计水平有限。。。。)
3.2菜单选项美化图解
3.3 选项分界线美化图解
注:要如上面图中,在选项A,B增加addSeparator 才有用。
3.4美化鼠标在选项上方时候的选项
注,如果想要完整测试代码,请阅读我的这篇文章https://blog.csdn.net/qq_38463737/article/details/107137381,在逻辑代码的初始化函数(还要加上分隔线代码)
def __init__(self, parent=None):中添加我的美化代码即可