在max osX上使用Qt组合框样式表

时间:2013-04-28 09:40:40

标签: c++ qt qtstylesheets

我尝试了许多不同的选项来设置QCombobox的样式,但我仍然在mac osx上有一些问题。 它看起来像这样:look on osx http://img90.imageshack.us/img90/9550/stylesheets.png

我想删除视图列表的白色顶部/底部,但我似乎无法找到一种方法来执行此操作。

这是我现在的代码:

QComboBox{
    color:rgba(200,200,200,255);
    background-color:rgba(71,71,71,255);
    selection-color:rgba(243,149,0,255);
    selection-background-color:rgba(71,71,71,255);
}
QComboBox QAbstractItemView{
    border-radius:0px;
    border:0px;
    selection-background-color:rgba(71,71,71,255);
    background:rgba(71,71,71,255);
    color:rgb(200,200,200);
}

感谢任何帮助

由于

1 个答案:

答案 0 :(得分:2)

使用自己的应用程序样式(基于QProxyStyle)&将QProxyStyle :: styleHint重写为:


    int CMyProxyStyle::styleHint( StyleHint hint, const QStyleOption*
    option = 0, const QWidget* widget = 0, QStyleHintReturn* returnData =
    0 ) const   
    {
        if( SH_ComboBox_Popup == hint )
          return 0;//disable combo-box popup top & bottom areas
        return QProxyStyle::styleHint( hint, option, widget, returnData );   
    }

为qApp实例安装自己的样式:


    qApp->setStyle( new CMyProxyStyle );