zoukankan      html  css  js  c++  java
  • Qt QSS样式化 菜单Qmenu&QAction

    项目是一款平板上的软件,菜单放在了右下角,没有用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  }
  • 相关阅读:
    IEqualityComparer<T> 重写注意事项
    InfoPath使用Sharepoint Webservice之多参数
    强制使用office web Apps新建文档
    SQL 分组取每组第N行数据
    Sharepoint Ribbon 开启右键菜单(此文作废)
    sharepoint 2010 Infopath 备忘
    sharepoint windows认证模式下 限制人员选取器能访问OU
    Unable to load configuration异常处理
    Java数据库连接池的配置
    No Suitable Driver Found 解决方法
  • 原文地址:https://www.cnblogs.com/ybqjymy/p/13632908.html
Copyright © 2011-2022 走看看