2012-07-16 10 views
5

मैं क्यूटी निर्माता का उपयोग कर रहा हूं। मेरे जीयूआई में मैं एक टैब विजेट का उपयोग करता हूं। इस विजेट में मुख्य विंडो (चित्र ए) के समान ग्रे पृष्ठभूमि रंग होना चाहिए। मैं क्यूटी डिजाइनर में संपादन स्टाइल शीट के साथ द्वारा इस पूरा किया:क्यूटी निर्माता में एक टैब विजेट का पृष्ठभूमि रंग कैसे सेट करें?

enter code herebackground-colour: rgb(240, 240, 240); 

लेकिन अब मैं दो नई समस्या है मैं हल नहीं कर सकते हैं:

  • बटन (-> भेजें) गोल नहीं कर रहे हैं अब और।
  • संपादन बॉक्स का पृष्ठभूमि रंग भी भूरे रंग में बदल गया है।

Befor मैं स्टाइल शीट जीयूआई चित्र बी में की तरह दिखाई देता

मैं भी

QPalette pal = m_pUi->tabWidget->palette(); 
pal.setColor(m_pUi->tabWidget->backgroundRole(), Qt::blue); 
m_pUi->tabWidget->setPalette(pal); 

की कोशिश की लेकिन यह केवल टैब के पीछे रंग, नहीं के पूरे रंग बदल जाता है बदल पूरी "टैब-विंडो-सतह"।

क्या मुझे अतिरिक्त शैली का विवरण बनाना है या क्या कोई और आसान समाधान है?

Picture A - with Style Sheet

चित्र ए - स्टाइल शीट

Picture B - without Style Sheet

चित्र बी के साथ - स्टाइल शीट

+0

मुझे पता चला कि एक्सपी के तहत पृष्ठभूमि हमेशा ग्रे है लेकिन विंडोज 7 के तहत यह सफेद है। –

+0

क्या आपने पैलेट पर बटन रंग से गड़बड़ करने का प्रयास किया है? ऐसा हो सकता है कि टैब बार इसके टैब के लिए उपयोग करता है। स्टाइल शीट के बिना तस्वीर पर, टैब और बटन बहुत समान दिखते हैं। –

उत्तर

0

बिना उपयोग करने के लिए "बातें" आप चाहते हैं QTabBars कहा जाता है। और

QTabBar::tab 
{ 
    background: #48555E; 
    color: white; 
    border-color: #48555E; 
} 

QTabBar::tab:selected, 
QTabBar::tab:hover 
{ 
    border-top-color: #1D2A32; 
    border-color: #40494E; 
    color: black; 
    background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #C1D8E8, stop: 1 #F0F5F8); 
} 

इसके अलावा, आप this question मिल सकती है इस official documentation व्यावहारिक: रखते हुए कि मन में आप इस प्रकार का स्टाइलशीट लिख सकते हैं।

4

मैं एक ही समस्या थी और मुझे पता चला कि आप अपने प्रत्येक टैब पर एक करने के लिए इस विशेषता निर्धारित करने की आवश्यकता है कि:

ui->tab->setAutoFillBackground(true); 

मुझे यकीन है कि नहीं कर रहा हूँ, लेकिन मुझे लगता है कि यह भी आवश्यक सेट है कि के लिए गुण है QTabWidget इस तरह के।

मुझे आशा है कि यह सहायता होगी।

+1

हां, मैंने कोशिश की और यह काम किया - इतना आसान, स्टाइलशीट के साथ गड़बड़ करने की कोई आवश्यकता नहीं है यदि आप चाहते हैं कि खिड़की का पृष्ठभूमि रंग हो। आप इसे QtDesigner में भी सेट कर सकते हैं, जो मैंने किया था। ऑब्जेक्ट इंस्पेक्टर में, प्रत्येक टैब QTabWidget के तहत एक QWidget है; प्रत्येक के लिए setAutoFillBackground संपत्ति की जांच करें और आप कर चुके हैं। – U62

संबंधित मुद्दे