2011-03-12 12 views
5

मैंने QTabWidget का उपयोग कर इंटरफेस के साथ एक चैट प्रोग्राम बनाया है। यदि किसी टैब में कोई अपडेट है तो मैं टैब शीर्षक फ़ॉन्ट को एक बोल्ड फ़ॉन्ट पर सेट करना चाहता हूं। QTabWidget :: फ़ॉन्ट के साथ मैं केवल के शीर्षकों का फ़ॉन्ट सेट कर सकता हूं सभी टैब।QTabWidget केवल एक टैब का शीर्षक फ़ॉन्ट सेट करें

उत्तर

5

दुर्भाग्यवश, आप केवल टेक्स्ट तक ही पहुंच सकते हैं। पाठ का फ़ॉन्ट QTabWidget के QTabBar में प्रकट नहीं हुआ है। शायद changing the color of the tab पर्याप्त होगा? अन्यथा, आपको पेंटिंग एल्गोरिदम को ओवरराइड करना होगा, जो शायद बोझिल साबित होगा। क्यूटी 3 में QTabtabAt(int index) के साथ संभव था, लेकिन दुर्भाग्यवश, उन्होंने इसे हटा दिया।

+1

धन्यवाद, मैं इसे टैब के आइकन की स्थापना समाधान कर लिया है – levu

+0

आपका स्वागत है । :) –

0

अब मेरे पास Qt नहीं है, लेकिन विचार यह है कि आपको टैब विजेट के विशेष पृष्ठ आइटम के लिए फ़ॉन्ट सेट करने का प्रयास करना चाहिए। कुछ इस तरह का प्रयास करें:

yourTabWidget.currentWidget()->setFont(/*bold font*/); 
+2

नहीं, 'currentWidget()' पृष्ठ तक पहुंचता है और प्रश्न में टैब के "टेक्स्ट" विजेट नहीं। –

+0

@netrom ठीक है, thx। उत्तर के लिए +1;) –

+0

एनपी और धन्यवाद, होवेन्स। :) –

3

आप QTabBar :: setTabTextColor() विधि का उपयोग कर सकते इस तरह:

QTabBar* bar=tagWidget->tabBar(); 
bar->setTabTextColor(index, Qt::blue); 
संबंधित मुद्दे