2013-04-28 3 views
1

나는 QCombobox를 스타일링하기 위해 다양한 옵션을 시도했지만 여전히 Mac OS X에서 몇 가지 문제가 있습니다. 다음과 같이 보입니다 :Qt 콤보 박스 스타일 시트 최대 osX에

보기 목록의 흰색 위쪽/아래쪽을 제거하고 싶습니다. 그러나 이것을 수행 할 방법을 찾을 수 없습니다. 여기

내가 지금 가지고있는 코드입니다 :

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); 
} 

어떤 도움

감사

을 감사
+0

가능한 중복 [스타일 QComboBox 팝업 메뉴 마진 Qt는 4] (http://stackoverflow.com/questions/9064993/style-qcombobox-popup-menu-margin-qt-4) – Lol4t0

+0

대답 이 게시물에 내 문제를 해결하지 않습니다. – Lex

+0

나는 QCombobox의 QStyle을 변경하여이 문제를 부분적으로 해결했습니다. 그것은 QWindowsStyle로 설정되어 있습니다 ... 그래서 맥 osx에 문제가 없습니다. 그래도 문제가 해결되지 않습니다. – Lex

답변

2

를 사용하여 자신의 응용 프로그램 스타일로 & 재정의 QProxyStyle :: styleHint (QProxyStyle 기준) :

 

    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 inst에 고유 한 스타일 설치 ANCE :

 

    qApp->setStyle(new CMyProxyStyle); 

+0

문제가 해결되어 반갑습니다;) 이것이 작동하고 있음을 확인했습니다. 이 방법을 사용하면 스타일 시트를 통해 QComboBox의 변경 사항을 보존 할 수 있습니까? 그렇다면 어떻게? – Lex

+0

예, 우리는 우리의 app custom QSS (comboboxes에 대해서도)에서 사용하기 때문에, –