मैं PySide साथ एक कंप्यूटर अनुप्रयोग के विकास कर रहा हूँ और मैं QTableWidget उपयोग कर रहा हूँ। आइए मान लें कि मेरी तालिका में 3 कॉलम हैं, लेकिन उनके पास मौजूद डेटा बहुत अलग है, जैसे कि (प्रत्येक पंक्ति के लिए) पहले कॉलम में एक लंबी वाक्य, फिर दो अंतिम कॉलम में 3 अंकों की संख्या। मैं चाहते हैं मेरी मेज आदेश डेटा करने के लिए अपने आकार को समायोजित करने, या कम से कम सक्षम के रूप में (जैसे) स्तंभ आकार उपलब्ध स्थान की 70/15/15% सेट करने के लिए होने के लिए आकार बदलने के लिए।PySide - PyQt: कैसे QTableWidget स्तंभ चौड़ाई उपलब्ध स्थान का अनुपात के रूप में स्थापित कर लिए?
यह करने के लिए सबसे अच्छा तरीका क्या है?
मैंने this question पढ़ने के बाद table.horizontalHeader().setResizeMode(QHeaderView.Stretch)
को आजमाया है, लेकिन यह उसी आकार के 3 कॉलम बनाता है।
मैंने table.horizontalHeader().setResizeMode(QHeaderView.ResizeToContents)
Fabio के comment के लिए भी धन्यवाद है, लेकिन यह आवश्यकतानुसार सभी उपलब्ध स्थान को भरता नहीं है।
न तो Interactive
, Fixed
, Stretch
, ResizeToContents
QHeaderView documentation से मुझे देने के लिए मैं क्या जरूरत है (देखें दूसरे संपादित करें) लगते हैं।
किसी भी मदद की सराहना की जाएगी, भले ही यह क्यूटी/सी ++ के लिए हो! आपका बहुत बहुत धन्यवाद।
संपादित करें: मैं एक समाधान की तरह पाया लेकिन यह अभी भी मैं के लिए क्या देख रहा हूँ नहीं है:
header = table.horizontalHeader()
header.setResizeMode(QHeaderView.ResizeToContents)
header.setStretchLastSection(True)
यह बेहतर होगा अगर वहाँ अस्तित्व में एक setStretchFirstSection
विधि, लेकिन दुर्भाग्य से वहाँ करता है एक प्रतीत नहीं होता है।
संपादित करें 2:
केवल बात यह है कि तालिका में संशोधित किया जा सकता है अंतिम स्तंभ, उपयोगकर्ता उस में एक नंबर दर्ज कर सकते हैं। लाल तीर इंगित करता है कि मैं क्या चाहता हूं।
साथ होता है यहाँ ResizeToContents
QHeaderView.ResizeToContents को QHeaderView.Stretch – Fabio
के बजाय कोशिश करें यह काम करता है, लेकिन यह काफी नहीं है कि मैं 'ResizeToContents' के साथ, क्योंकि मेरे कॉलम पर्याप्त नहीं हैं, वे उपलब्ध स्थान को भर नहीं पाते हैं। मैं संपादित करूंगा ताकि यह और स्पष्ट हो जाए। – BusyAnt