2011-04-04 3 views
7

मैं निम्नलिखित त्रुटि मिलती रहती है साथ बटन रंग बदलने के लिए: AttributeError: 'NoneType' ऑब्जेक्ट कोई विशेषता 'कॉन्फ़िगर'कैसे tkinter

# create color button 
self.button = Button(self, 
        text = "Click Me", 
        command = self.color_change, 
        bg = "blue" 
        ).grid(row = 2, column = 2, sticky = W) 

def color_change(self): 
    """Changes the button's color""" 

    self.button.configure(bg = "red") 

उत्तर

11

है जब आप self.button = Button(...).grid(...) करते हैं, क्या self.button को सौंप दिया जाता है परिणाम है grid() कमांड, Button ऑब्जेक्ट का संदर्भ।

आपको पैकिंग/ग्राइडिंग से पहले अपने self.button चर को असाइन करने की आवश्यकता है। वह कुछ इस तरह दिखना चाहिए:

self.button = Button(self,text="Click Me",command=self.color_change,bg="blue") 
self.button.grid(row = 2, column = 2, sticky = W) 
+0

उत्कृष्ट, यह ठीक है! बहुत धन्यवाद! –

+0

एक बार जब आप बटन बना चुके हैं तो आप पृष्ठभूमि को कैसे बदल सकते हैं? – RhetoricalRuvim

0

प्रणाली सही है। बटन को प्रारूपित करने का उचित तरीका '.config' है। नहीं '.configure'

+0

यह वास्तव में एक टिप्पणी है, जवाब नहीं। एक बार आपके पास पर्याप्त [प्रतिष्ठा] (https://stackoverflow.com/help/whats-reputation) हो जाने पर आप [किसी भी पोस्ट पर टिप्पणी कर सकेंगे] (https://stackoverflow.com/help/privileges/comment); इसके बजाय, [उन उत्तरों को प्रदान करें जिन्हें पूछताछ से स्पष्टीकरण की आवश्यकता नहीं है] (https://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-can- i-कर-बजाय)। – peacetype

+0

ओह, मुझे मिल गया। आपको परेशान करने के लिए खेद है। मैं यहाँ ढेर अतिप्रवाह पर नया हूँ। –