一杯清酒邀明月
天下本无事,庸人扰之而烦耳。

项目是一款平板上的软件,菜单放在了右下角,没有用qss设置样式之前,菜单非常的小,菜单项也都挤在了一块,设置样式后效果非常好。

先上一张效果图吧,可以看到QSS样式化后的菜单的特点:上下左右间距增大了,调整到很是的大小,菜单项目中间有一条间隔的横线区分各个菜单项,

菜单中的QAction鼠标经过时菜单背景会变成蓝色等。


实现这种效果如果在Qt中用C++语句实现可能有些困难,我也没有这么做过,后来参考了Qt帮助文档的一些QSS的例子做出了这种效果。

具体实现做法

将一下样式添加到Qt的QSS样式表文件中,要根据你的实际情况调整相应的长宽等值,具体的参数说明下面代码注释中已经说明。如果你想对QSS有个好的了解建议学习一些简单的CSS语法,QSS就是借鉴了CSS,但是比它简单多了,之后你会发现QSS非常简单,而且非常便捷好用,为程序美化开发省下很多时间。

 

 1 /*Qmenu Style Sheets*/
 2  QMenu {
 3      background-color: white; /* sets background of the menu 设置整个菜单区域的背景色,我用的是白色:white*/
 4      border: 1px solid white;/*整个菜单区域的边框粗细、样式、颜色*/
 5  }
 6  
 7  QMenu::item {
 8      /* sets background of menu item. set this to something non-transparent
 9          if you want menu color and menu item color to be different */
10      background-color: transparent;
11      padding:8px 32px;/*设置菜单项文字上下和左右的内边距,效果就是菜单中的条目左右上下有了间隔*/
12      margin:0px 8px;/*设置菜单项的外边距*/
13      border-bottom:1px solid #DBDBDB;/*为菜单项之间添加横线间隔*/
14  }
15  
16  QMenu::item:selected { /* when user selects item using mouse or keyboard */
17      background-color: #2dabf9;/*这一句是设置菜单项鼠标经过选中的样式*/
18  }

 

posted on 2020-09-08 15:43  一杯清酒邀明月  阅读(6874)  评论(0编辑  收藏  举报