diff options
Diffstat (limited to 'Demo/tkinter/matt/canvas-moving-or-creating.py')
-rw-r--r-- | Demo/tkinter/matt/canvas-moving-or-creating.py | 45 |
1 files changed, 20 insertions, 25 deletions
diff --git a/Demo/tkinter/matt/canvas-moving-or-creating.py b/Demo/tkinter/matt/canvas-moving-or-creating.py index f58cc97..f14a6dc 100644 --- a/Demo/tkinter/matt/canvas-moving-or-creating.py +++ b/Demo/tkinter/matt/canvas-moving-or-creating.py @@ -9,26 +9,24 @@ class Test(Frame): ################################################################### def mouseDown(self, event): # see if we're inside a dot. If we are, it - # gets tagged as "current" for free by tk. - - if not event.widget.find_withtag("current"): + # gets tagged as CURRENT for free by tk. + if not event.widget.find_withtag(CURRENT): # there is no dot here, so we can make one, # and bind some interesting behavior to it. # ------ - - # create a dot, and mark it as current - fred = self.draw.create_oval(event.x - 10, event.y -10, event.x +10, event.y + 10, - {"fill" : "green", "tag" : "current"}) + # create a dot, and mark it as CURRENT + fred = self.draw.create_oval( + event.x - 10, event.y -10, event.x +10, event.y + 10, + fill="green", tags=CURRENT) self.draw.bind(fred, "<Any-Enter>", self.mouseEnter) self.draw.bind(fred, "<Any-Leave>", self.mouseLeave) - + self.lastx = event.x self.lasty = event.y - - + def mouseMove(self, event): - self.draw.move("current", event.x - self.lastx, event.y - self.lasty) + self.draw.move(CURRENT, event.x - self.lastx, event.y - self.lasty) self.lastx = event.x self.lasty = event.y @@ -36,25 +34,22 @@ class Test(Frame): ###### Event callbacks for canvas ITEMS (stuff drawn on the canvas) ################################################################### def mouseEnter(self, event): - # the "current" tag is applied to the object the cursor is over. + # the CURRENT tag is applied to the object the cursor is over. # this happens automatically. - self.draw.itemconfig("current", {"fill" : "red"}) - + self.draw.itemconfig(CURRENT, fill="red") + def mouseLeave(self, event): - # the "current" tag is applied to the object the cursor is over. + # the CURRENT tag is applied to the object the cursor is over. # this happens automatically. - self.draw.itemconfig("current", {"fill" : "blue"}) - + self.draw.itemconfig(CURRENT, fill="blue") def createWidgets(self): - self.QUIT = Button(self, {'text': 'QUIT', - 'fg': 'red', - 'command': self.quit}) - self.QUIT.pack({'side': 'left', 'fill': 'both'}) - self.draw = Canvas(self, {"width" : "5i", "height" : "5i"}) - self.draw.pack({'side': 'left'}) - - + self.QUIT = Button(self, text='QUIT', foreground='red', + command=self.quit) + self.QUIT.pack(side=LEFT, fill=BOTH) + self.draw = Canvas(self, width="5i", height="5i") + self.draw.pack(side=LEFT) + Widget.bind(self.draw, "<1>", self.mouseDown) Widget.bind(self.draw, "<B1-Motion>", self.mouseMove) |