2014-05-25 8 views
8

मैंने निम्नलिखित मामले पर प्रलेखन पढ़ा है, लेकिन Qt इतना जटिल है कि मैंने टुकड़ा याद किया होगा।पाइसाइड में विंडो शीर्षक को कैसे बदला जाए?

मैंने QMainWindow बनाया है और self.setWindowTitle का उपयोग करके एक शीर्षक सेट किया है। बाद में कोड में मैं बस इस शीर्षक को बदलना चाहता हूं और इसलिए मैंने विधि self.setWindowTitle फिर से उपयोग की। लेकिन इसने केवल मेरे आवेदन से शीर्षक हटा दिया, लेकिन उबंटू में पैनल पर सही शीर्षक डाला।

उबंटू सिस्टम पर और स्पष्टीकरण: उदाहरण के लिए, जब मैं वेबब्रोसर विंडो में इस पाठ को संपादित करता हूं तो शीर्षक कहता है कि 'विंडो कैसे बदलें ...' और कंप्यूटर स्क्रीन के शीर्ष पर पैनल पर मैं देखता हूं टेक्स्ट 'फ़ायरफ़ॉक्स वेब ब्राउज़र'।

मेरा pyside क्यूटी उदाहरण अब एप्लिकेशन विंडो से शीर्षक हटा देता है और इसे ऊपरी हाथ पैनल पर रखता है।

क्या मुझे शीर्षक बदलने के लिए setWindowTitle के अलावा किसी अन्य विधि की आवश्यकता है? शायद केंद्रीय विजिट, या मेनूबार, या कुछ अन्य तत्व से? और शीर्षक पहली जगह क्यों गायब हो गया?

उबंटू स्क्रीनशॉट setWindowTitle की पहली कॉल -इस शीर्षक 'Picsel' आवेदन विंडो शीर्षक पर और शीर्ष उबंटू पैनल पर सेट किया गया है (या इस कहा जाता है जो कुछ भी) के बाद:

After first setWindowTitle

उबंटू स्क्रीनशॉट के बाद setWindowTitle की दूसरी कॉल - शीर्षक अनुप्रयोग विंडो पर ही सेट नहीं है, लेकिन बहुत शीर्ष पैनल पर:

After second setWindowTitle

+0

क्या आप कुछ स्पष्टीकरण (या शायद एक छवि) प्रदान कर सकते हैं? मुझे यकीन नहीं है कि यह सिर्फ मुझे है, लेकिन यह "लेकिन इसने केवल मेरे आवेदन से शीर्षक हटा दिया, लेकिन उबंटू में पैनल पर सही शीर्षक डाला" बहुत स्पष्ट नहीं है। क्या आप एप्लिकेशन विंडो शीर्षक से क्या मतलब चाहते हैं इसकी एक छवि प्रदान कर सकते हैं? – estebro

+0

ऐसा लगता है कि आप संवाद बॉक्स के बजाय मुख्य विंडो के लिए शीर्षक बदल रहे हैं। प्रोग्रामिंग के दौरान आपको एकाधिक दस्तावेज़ इंटरफेस (एमडीआई) और सिंगल डॉक्यूमेंट इंटरफेस (एसडीआई) पर विचार करने की भी आवश्यकता है। – Vinay

+0

तो मैं संवाद बॉक्स का शीर्षक कैसे बदल सकता हूं? – Alex

उत्तर

2
import sys 
from PySide import QtGui, QtCore 

class Example(QtGui.QWidget): 

    def __init__(self): 
     super(Example, self).__init__() 

     self.initUI() 

    def initUI(self):  

     cb = QtGui.QCheckBox('Show title', self) 
     cb.move(20, 20) 
     cb.toggle() 
     cb.stateChanged.connect(self.changeTitle) 

     self.setGeometry(300, 300, 250, 150) 
     self.setWindowTitle('QtGui.QCheckBox') 
     self.show() 

    def changeTitle(self, state): 

     if state == QtCore.Qt.Checked: 
      self.setWindowTitle('Checkbox') 
     else: 
      self.setWindowTitle('') 

def main(): 

    app = QtGui.QApplication(sys.argv) 
    ex = Example() 
    sys.exit(app.exec_()) 


if __name__ == '__main__': 
    main() 

स्रोत: http://zetcode.com/gui/pysidetutorial/widgets/

+0

मुझे आश्चर्य है कि क्या आप इस पर एक प्रारंभिक अनुच्छेद जोड़ने के इच्छुक होंगे? मुझे कोई विशेष संदेह नहीं है यह सवाल का जवाब नहीं देता है, लेकिन यदि आप _how_ को समझा सकते हैं तो यह इसका उत्तर देता है, यह बहुत अच्छा होगा! – halfer

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