|
1 from Tkinter import * |
|
2 |
|
3 # this is the same as simple-demo-1.py, but uses |
|
4 # subclassing. |
|
5 # note that there is no explicit call to start Tk. |
|
6 # Tkinter is smart enough to start the system if it's not already going. |
|
7 |
|
8 |
|
9 class Test(Frame): |
|
10 def printit(self): |
|
11 print "hi" |
|
12 |
|
13 def createWidgets(self): |
|
14 self.QUIT = Button(self, text='QUIT', foreground='red', |
|
15 command=self.quit) |
|
16 self.QUIT.pack(side=BOTTOM, fill=BOTH) |
|
17 |
|
18 self.draw = Canvas(self, width="5i", height="5i") |
|
19 |
|
20 self.speed = Scale(self, orient=HORIZONTAL, from_=-100, to=100) |
|
21 |
|
22 self.speed.pack(side=BOTTOM, fill=X) |
|
23 |
|
24 # all of these work.. |
|
25 self.draw.create_rectangle(0, 0, 10, 10, tags="thing", fill="blue") |
|
26 self.draw.pack(side=LEFT) |
|
27 |
|
28 def moveThing(self, *args): |
|
29 velocity = self.speed.get() |
|
30 str = float(velocity) / 1000.0 |
|
31 str = "%ri" % (str,) |
|
32 self.draw.move("thing", str, str) |
|
33 self.after(10, self.moveThing) |
|
34 |
|
35 def __init__(self, master=None): |
|
36 Frame.__init__(self, master) |
|
37 Pack.config(self) |
|
38 self.createWidgets() |
|
39 self.after(10, self.moveThing) |
|
40 |
|
41 |
|
42 test = Test() |
|
43 |
|
44 test.mainloop() |