MultiStatusBar.py 796 Bytes
Newer Older
David Scherer's avatar
David Scherer committed
1 2 3 4
from Tkinter import *

class MultiStatusBar(Frame):

5 6 7 8 9 10 11 12 13 14 15 16 17 18
    def __init__(self, master=None, **kw):
        if master is None:
            master = Tk()
        apply(Frame.__init__, (self, master), kw)
        self.labels = {}

    def set_label(self, name, text='', side=LEFT):
        if not self.labels.has_key(name):
            label = Label(self, bd=1, relief=SUNKEN, anchor=W)
            label.pack(side=side)
            self.labels[name] = label
        else:
            label = self.labels[name]
        label.config(text=text)
David Scherer's avatar
David Scherer committed
19 20

def _test():
21 22 23 24 25 26 27 28 29
    b = Frame()
    c = Text(b)
    c.pack(side=TOP)
    a = MultiStatusBar(b)
    a.set_label("one", "hello")
    a.set_label("two", "world")
    a.pack(side=BOTTOM, fill=X)
    b.pack()
    b.mainloop()
David Scherer's avatar
David Scherer committed
30 31

if __name__ == '__main__':
32
    _test()