2013-02-03 33 views
8

मैं दूसरे टैब को तीसरे से अलग करने के लिए एक स्पेस डालना चाहता हूं। क्या यह संभव है? मैंने कुछ स्टाइलशीट्स की कोशिश की है लेकिन चूंकि यह विजेट मेरे लिए नया है, मुझे अब तक कोई सफलता नहीं मिली है।QTabWidget में दो टैब के बीच एक जगह कैसे सम्मिलित करें?

उत्तर

18

हां, यह संभव है, लेकिन इतना स्पष्ट नहीं है। यहां कुछ समय पहले आया था।

जब भी आपको दो टैब के बीच एक स्थान की आवश्यकता होती है, तो टैब के बीच एक नया टैब डालें और QTabWidget::setTabEnabled(int index, bool enable) पर कॉल करके नया टैब अक्षम कर दें। इस प्रकार नया टैब अब से बातचीत करने के लिए संभव नहीं होगा (जब तक कि टैब केवल एक ही मौजूद न हो)। तुम भी पर निम्नलिखित शैली पत्रक पर सेट करना होगा अपने QTabWidget:

QTabBar::tab:disabled { 
    width: 100px; 
    color: transparent; 
    background: transparent; 
} 

इस शैली पत्रक नया टैब अदृश्य बनाता है (वास्तव में यह, सभी विकलांग टैब अदृश्य बनाता है तो जब तक कि ठीक है, इस विधि आप के लिए काम नहीं करेगा)। स्टाइल शीट में width के मान को बदलकर आप स्पेस की चौड़ाई समायोजित कर सकते हैं।

परिणाम:

QTabWidget with space between tabs

+4

आप इस हैक के लिए 100 मिलना चाहिए! –