404

[ Avaa Bypassed ]




Upload:

Command:

elspacio@3.15.151.109: ~ $
from Tkinter import *

# allows moving dots with multiple selection.

SELECTED_COLOR = "red"
UNSELECTED_COLOR = "blue"

class Test(Frame):
    ###################################################################
    ###### Event callbacks for THE CANVAS (not the stuff drawn on it)
    ###################################################################
    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):
            # we clicked outside of all dots on the canvas. unselect all.

            # re-color everything back to an unselected color
            self.draw.itemconfig("selected", fill=UNSELECTED_COLOR)
            # unselect everything
            self.draw.dtag("selected")
        else:
            # mark as "selected" the thing the cursor is under
            self.draw.addtag("selected", "withtag", CURRENT)
            # color it as selected
            self.draw.itemconfig("selected", fill=SELECTED_COLOR)

        self.lastx = event.x
        self.lasty = event.y


    def mouseMove(self, event):
        self.draw.move("selected", event.x - self.lastx, event.y - self.lasty)
        self.lastx = event.x
        self.lasty = event.y

    def makeNewDot(self):
        # create a dot, and mark it as current
        fred = self.draw.create_oval(0, 0, 20, 20,
                                     fill=SELECTED_COLOR, tags=CURRENT)
        # and make it selected
        self.draw.addtag("selected", "withtag", CURRENT)

    def createWidgets(self):
        self.QUIT = Button(self, text='QUIT', foreground='red',
                           command=self.quit)

        ################
        # make the canvas and bind some behavior to it
        ################
        self.draw = Canvas(self, width="5i", height="5i")
        Widget.bind(self.draw, "<1>", self.mouseDown)
        Widget.bind(self.draw, "<B1-Motion>", self.mouseMove)

        # and other things.....
        self.button = Button(self, text="make a new dot", foreground="blue",
                             command=self.makeNewDot)

        message = ("%s dots are selected and can be dragged.\n"
                   "%s are not selected.\n"
                   "Click in a dot to select it.\n"
                   "Click on empty space to deselect all dots."
                   ) % (SELECTED_COLOR, UNSELECTED_COLOR)
        self.label = Message(self, width="5i", text=message)

        self.QUIT.pack(side=BOTTOM, fill=BOTH)
        self.label.pack(side=BOTTOM, fill=X, expand=1)
        self.button.pack(side=BOTTOM, fill=X)
        self.draw.pack(side=LEFT)

    def __init__(self, master=None):
        Frame.__init__(self, master)
        Pack.config(self)
        self.createWidgets()

test = Test()
test.mainloop()

Filemanager

Name Type Size Permission Actions
00-HELLO-WORLD.py File 724 B 0644
00-HELLO-WORLD.pyc File 1.27 KB 0644
00-HELLO-WORLD.pyo File 1.27 KB 0644
README File 513 B 0644
animation-simple.py File 939 B 0644
animation-simple.pyc File 1.68 KB 0644
animation-simple.pyo File 1.68 KB 0644
animation-w-velocity-ctrl.py File 1.17 KB 0644
animation-w-velocity-ctrl.pyc File 1.98 KB 0644
animation-w-velocity-ctrl.pyo File 1.98 KB 0644
bind-w-mult-calls-p-type.py File 1.51 KB 0644
bind-w-mult-calls-p-type.pyc File 1.37 KB 0644
bind-w-mult-calls-p-type.pyo File 1.37 KB 0644
canvas-demo-simple.py File 748 B 0644
canvas-demo-simple.pyc File 1.39 KB 0644
canvas-demo-simple.pyo File 1.39 KB 0644
canvas-gridding.py File 2.22 KB 0644
canvas-gridding.pyc File 2.27 KB 0644
canvas-gridding.pyo File 2.27 KB 0644
canvas-moving-or-creating.py File 2.37 KB 0644
canvas-moving-or-creating.pyc File 2.52 KB 0644
canvas-moving-or-creating.pyo File 2.52 KB 0644
canvas-moving-w-mouse.py File 2.08 KB 0644
canvas-moving-w-mouse.pyc File 2.42 KB 0644
canvas-moving-w-mouse.pyo File 2.42 KB 0644
canvas-mult-item-sel.py File 2.77 KB 0644
canvas-mult-item-sel.pyc File 2.74 KB 0644
canvas-mult-item-sel.pyo File 2.74 KB 0644
canvas-reading-tag-info.py File 1.64 KB 0644
canvas-reading-tag-info.pyc File 1.82 KB 0644
canvas-reading-tag-info.pyo File 1.82 KB 0644
canvas-w-widget-draw-el.py File 1.15 KB 0644
canvas-w-widget-draw-el.pyc File 1.47 KB 0644
canvas-w-widget-draw-el.pyo File 1.47 KB 0644
canvas-with-scrollbars.py File 2.06 KB 0644
canvas-with-scrollbars.pyc File 2.31 KB 0644
canvas-with-scrollbars.pyo File 2.31 KB 0644
dialog-box.py File 2.38 KB 0644
dialog-box.pyc File 1.93 KB 0644
dialog-box.pyo File 1.93 KB 0644
entry-simple.py File 729 B 0644
entry-simple.pyc File 1.05 KB 0644
entry-simple.pyo File 1.05 KB 0644
entry-with-shared-variable.py File 1.71 KB 0644
entry-with-shared-variable.pyc File 1.6 KB 0644
entry-with-shared-variable.pyo File 1.6 KB 0644
killing-window-w-wm.py File 1.26 KB 0644
killing-window-w-wm.pyc File 1.46 KB 0644
killing-window-w-wm.pyo File 1.46 KB 0644
menu-all-types-of-entries.py File 8.9 KB 0644
menu-all-types-of-entries.pyc File 4.85 KB 0644
menu-all-types-of-entries.pyo File 4.85 KB 0644
menu-simple.py File 3.17 KB 0644
menu-simple.pyc File 1.92 KB 0644
menu-simple.pyo File 1.92 KB 0644
not-what-you-might-think-1.py File 675 B 0644
not-what-you-might-think-1.pyc File 1.27 KB 0644
not-what-you-might-think-1.pyo File 1.27 KB 0644
not-what-you-might-think-2.py File 747 B 0644
not-what-you-might-think-2.pyc File 1.3 KB 0644
not-what-you-might-think-2.pyo File 1.3 KB 0644
packer-and-placer-together.py File 1.18 KB 0644
packer-and-placer-together.pyc File 1.36 KB 0644
packer-and-placer-together.pyo File 1.36 KB 0644
packer-simple.py File 819 B 0644
packer-simple.pyc File 1.39 KB 0644
packer-simple.pyo File 1.39 KB 0644
placer-simple.py File 1.05 KB 0644
placer-simple.pyc File 1.26 KB 0644
placer-simple.pyo File 1.26 KB 0644
pong-demo-1.py File 1.51 KB 0644
pong-demo-1.pyc File 2.08 KB 0644
pong-demo-1.pyo File 2.08 KB 0644
printing-coords-of-items.py File 2.34 KB 0644
printing-coords-of-items.pyc File 2.52 KB 0644
printing-coords-of-items.pyo File 2.52 KB 0644
radiobutton-simple.py File 1.96 KB 0644
radiobutton-simple.pyc File 1.82 KB 0644
radiobutton-simple.pyo File 1.82 KB 0644
rubber-band-box-demo-1.py File 2.08 KB 0644
rubber-band-box-demo-1.pyc File 2.51 KB 0644
rubber-band-box-demo-1.pyo File 2.51 KB 0644
rubber-line-demo-1.py File 1.87 KB 0644
rubber-line-demo-1.pyc File 2.22 KB 0644
rubber-line-demo-1.pyo File 2.22 KB 0644
slider-demo-1.py File 1000 B 0644
slider-demo-1.pyc File 1.67 KB 0644
slider-demo-1.pyo File 1.67 KB 0644
subclass-existing-widgets.py File 677 B 0644
subclass-existing-widgets.pyc File 1.21 KB 0644
subclass-existing-widgets.pyo File 1.21 KB 0644
two-radio-groups.py File 3.67 KB 0644
two-radio-groups.pyc File 2.14 KB 0644
two-radio-groups.pyo File 2.14 KB 0644
window-creation-more.py File 1020 B 0644
window-creation-more.pyc File 1.68 KB 0644
window-creation-more.pyo File 1.68 KB 0644
window-creation-simple.py File 815 B 0644
window-creation-simple.pyc File 1.6 KB 0644
window-creation-simple.pyo File 1.6 KB 0644
window-creation-w-location.py File 1.29 KB 0644
window-creation-w-location.pyc File 2.05 KB 0644
window-creation-w-location.pyo File 2.05 KB 0644