2011-03-18 8 views
5

मैं Listbox विजेट में एक विशिष्ट तत्व का जिक्र कर रहा हूं।क्या सूची सूची में किसी विशिष्ट आइटम को रंगना संभव है?

पृष्ठभूमि रंग सबसे वांछित है लेकिन किसी विशिष्ट सेल के लिए रंग का कोई भी रूप शानदार होगा।

उत्तर

18

Listbox विजेट आप spefic वस्तुओं के रंग नहीं बदल सकते हैं के बारे में effbot.org प्रलेखन के अनुसार:

लिस्टबॉक्स केवल पाठ मदों को शामिल कर सकते हैं और सभी आइटम एक ही फ़ॉन्ट और रंग

होना आवश्यक है

लेकिन वास्तव में आप अपने Listbox ऑब्जेक्ट की itemconfig विधि का उपयोग कर विशिष्ट वस्तुओं के फ़ॉन्ट और पृष्ठभूमि रंग दोनों को बदल सकते हैं। निम्नलिखित उदाहरण देखें:

import tkinter as tk 


def demo(master): 
    listbox = tk.Listbox(master) 
    listbox.pack(expand=1, fill="both") 

    # inserting some items 
    listbox.insert("end", "A list item") 

    for item in ["one", "two", "three", "four"]: 
     listbox.insert("end", item) 

    # this changes the background colour of the 2nd item 
    listbox.itemconfig(1, {'bg':'red'}) 

    # this changes the font color of the 4th item 
    listbox.itemconfig(3, {'fg': 'blue'}) 

    # another way to pass the colour 
    listbox.itemconfig(2, bg='green') 
    listbox.itemconfig(0, foreground="purple") 


if __name__ == "__main__": 
    root = tk.Tk() 
    demo(root) 
    root.mainloop() 
+0

आह ... ठीक है, धन्यवाद। मैं अजगर के लिए नया हूं और मैं .configure (बीजी = "ग्रीन") का उपयोग करने की कोशिश कर रहा था –

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