dvadf
PK �
Q\
Cx�j j guido/paint.pynu �[��� """"Paint program by Dave Michell.
Subject: tkinter "paint" example
From: Dave Mitchell <davem@magnet.com>
To: python-list@cwi.nl
Date: Fri, 23 Jan 1998 12:18:05 -0500 (EST)
Not too long ago (last week maybe?) someone posted a request
for an example of a paint program using Tkinter. Try as I might
I can't seem to find it in the archive, so i'll just post mine
here and hope that the person who requested it sees this!
All this does is put up a canvas and draw a smooth black line
whenever you have the mouse button down, but hopefully it will
be enough to start with.. It would be easy enough to add some
options like other shapes or colors...
yours,
dave mitchell
davem@magnet.com
"""
from Tkinter import *
"""paint.py: not exactly a paint program.. just a smooth line drawing demo."""
b1 = "up"
xold, yold = None, None
def main():
root = Tk()
drawing_area = Canvas(root)
drawing_area.pack()
drawing_area.bind("<Motion>", motion)
drawing_area.bind("<ButtonPress-1>", b1down)
drawing_area.bind("<ButtonRelease-1>", b1up)
root.mainloop()
def b1down(event):
global b1
b1 = "down" # you only want to draw when the button is down
# because "Motion" events happen -all the time-
def b1up(event):
global b1, xold, yold
b1 = "up"
xold = None # reset the line when you let go of the button
yold = None
def motion(event):
if b1 == "down":
global xold, yold
if xold is not None and yold is not None:
event.widget.create_line(xold,yold,event.x,event.y,smooth=TRUE)
# here's where you draw it. smooth. neat.
xold = event.x
yold = event.y
if __name__ == "__main__":
main()
PK �
Q\��kK�\ �\ guido/sortvisu.pycnu �[��� �
Afc @ s� d Z d d l Td d l m Z m Z d d l Z d Z d Z d Z d d d � � YZ d d d
� � YZ
d � Z d � Z d
� Z
d � Z d � Z d � Z d � Z d � Z d � Z d � Z d d d � � YZ d � Z e d k r� e � n d S( sj Sorting algorithms visualizer using Tkinter.
This module is comprised of three ``components'':
- an array visualizer with methods that implement basic sorting
operations (compare, swap) as well as methods for ``annotating'' the
sorting algorithm (e.g. to show the pivot element);
- a number of sorting algorithms (currently quicksort, insertion sort,
selection sort and bubble sort, as well as a randomization function),
all using the array visualizer for its basic operations and with calls
to its annotation methods;
- and a ``driver'' class which can be used as a Grail applet or as a
stand-alone application.
i����( t *( t Linet RectangleNi
i t Arrayc B s� e Z d d � Z d � Z d Z d � Z d � Z d Z d Z d � Z
d � Z d Z d � Z
d
� Z d � Z d � Z d
� Z d � Z d � Z d � Z d � Z d � Z d � Z d � Z d � Z d � Z d � Z d � Z d � Z d � Z RS( c C s | | _ t | j � | _ | j j d t � t | j � | _ | j j � t | j � | _ | j j � t | j � | _ | j j � t
| j d d d d � | _ t
| j d d d d � | _ t
| j d d d d � | _
g | _ d | _ | _ | r| j | � n d S( Nt filli ( t mastert Framet framet packt Xt Labelt labelt Canvast canvast reportR t leftt rightt pivott itemst sizet maxvaluet setdata( t selfR t data( ( s3 /usr/lib64/python2.7/Demo/tkinter/guido/sortvisu.pyt __init__"