如何在qmenubar中增加选择边距宽度

时间:2014-02-03 10:36:41

标签: qt

我试图将qmenubar中项目的间距设置为16像素,将左边距设置为8像素。使用styleguide我固定了间距和左边距。

"QMenuBar { \
                            padding-left:-9px; \
                            spacing: 16px; \
                            background-color: qlineargradient(spread:pad, x1:0, y1:0, x2:0, y2:1, stop:0 #B0B4B3, stop:0.5 #D4D5D4, stop:1 #FEFEFE); \
                            border-bottom-color: rgb(26,131,212); \
                        } \
                        QMenuBar::item { \
                            background: transparent;  \
                        } \
                        QMenuBar::item:selected { \
                                           background: qconicalgradient(cx:0, cy:0.5, angle: 90,\
                                                            fx:0.5, fy:0.5, stop:0 rgb(29,146,236), stop:1 rgb(65, 167,243)); color:rgb(255,255,255); \
                        } \
                    "; 

但我不知道如何增加项目的选择宽度或边距。如果未选项之间的间距是16像素。选定的应该是12。当选择项目时,左边距和右边距的四个像素必须增加。 enter image description here

1 个答案:

答案 0 :(得分:0)

我不明白你到底想要什么...你想放大选定的菜单栏,以便其他人会离开吗?

无论如何 - 您可以更改:: item和:: item:selected的选择范围。我想出了一个技巧,你可以设置较大的项目边距和较小的选项 - 看起来它会放大背景,虽然文字没有改变(你可以根据需要改变字体大小)

QMenuBar::item
{
    margin-left: 10px;
    margin-right: 10px;
    background: blue;
}

QMenuBar::item:selected
{
    margin-left: 0px;
    margin-right: 0px;
    background: blue;
}