porting from Tkinter to pygtk
Michele Simionato
michele.simionato at gmail.com
Wed Feb 9 11:54:52 EST 2005
I am in the process of learning pygtk and I would like to port
some custom made Tkinter widgets to pygtk, just an exercise.
For instance I have this code:
. from Tkinter import *
.
. class AnimatedLabel(Label):
. def __init__(self, master, text, width=72, maxspc=16, deltat=100,
**kw):
. self.text = text
. self.width = width
. self.maxspc = maxspc
. self.deltat = deltat
. self.stringvar = StringVar(master)
. self.stringvar.set(text)
. self.stop = False
. Label.__init__(self, master, textvariable=self.stringvar,
**kw)
.
. def startAnimation(self, spaces='', addspace=False):
. if len(spaces) == 0 or len(spaces) == self.maxspc:
. addspace = not addspace
. if addspace: # add a space
. spaces += ' '
. else: # remove a space
. spaces = spaces[1:]
. if not self.stop: # repeat each 100 ms changing spaces and
addspace
.
self.stringvar.set(spaces.join(self.text).center(self.width))
. self.after(self.deltat, self.startAnimation, spaces,
addspace)
.
. def stopAnimation(self):
. self.stop = True
.
.
. if __name__ == "__main__":
. t = Tk()
. t.title('Example')
. t.config(background='green')
.
. a = AnimatedLabel(t, text="Hello", fg='blue', bg='green')
. a.pack()
. a.startAnimation()
. t.mainloop()
what's the equivalent of the .after() method in pygtk?
BTW, is there any intro to pygtk thought for Tkinter users?
TIA,
Michele Simionato
More information about the Python-list
mailing list