Selasa, 30 November 2010

Aplikasi warna pada Phyton

kali ini saya akan memposting sebuah aplikasi yang bila kita mendrag dengan mouse akan keluar warna. aplikasi ini di buat dengan menggunakan progam phyton.
berikut di bawah ini yang berwarna merah adalah scriptnya:


from Tkinter import *
import time

trace = 0

class CanvasEventsDemo:
def __init__(self, parent=None):
canvas = Canvas(width=300, height=300, bg='beige')
canvas.pack()
canvas.bind('', self.onStart)
canvas.bind('', self.onGrow)
canvas.bind('', self.onClear)
canvas.bind('', self.onMove)
self.canvas = canvas
self.drawn = None
self.kinds = [canvas.create_oval, canvas.create_rectangle]
def onStart(self, event):
self.shape = self.kinds[0]
self.kinds = self.kinds[1:] + self.kinds[:1]
self.start = event
self.drawn = None
def onGrow(self, event):
canvas = event.widget
if self.drawn: canvas.delete(self.drawn)
objectId = self.shape(self.start.x, self.start.y, event.x, event.y)
if trace: print objectId
self.drawn = objectId
def onClear(self, event):
event.widget.delete('all')
def onMove(self, event):
if self.drawn:
if trace: print self.drawn
canvas = event.widget
diffX, diffY = (event.x - self.start.x), (event.y - self.start.y)
canvas.move(self.drawn, diffX, diffY)
self.start = event

class CanvasEventsDemoTags(CanvasEventsDemo):
def __init__(self, parent=None):
CanvasEventsDemo.__init__(self, parent)
self.canvas.create_text(75, 8, text='Press o and r to move shapes')
self.canvas.master.bind('', self.onMoveOvals)
self.canvas.master.bind('', self.onMoveRectangles)
self.kinds = self.create_oval_tagged, self.create_rectangle_tagged
def create_oval_tagged(self, x1, y1, x2, y2):
objectId = self.canvas.create_oval(x1, y1, x2, y2)
self.canvas.itemconfig(objectId, tag='ovals', fill='blue')
return objectId
def create_rectangle_tagged(self, x1, y1, x2, y2):
objectId = self.canvas.create_rectangle(x1, y1, x2, y2)
self.canvas.itemconfig(objectId, tag='rectangles', fill='red')
return objectId
def onMoveOvals(self, event):
print 'moving ovals'
self.moveInSquares(tag='ovals')
def onMoveRectangles(self, event):
print 'moving rectangles'
self.moveInSquares(tag='rectangles')
def moveInSquares(self, tag):
for i in range(5):
for (diffx, diffy) in [(+20, 0), (0, +20), (-20, 0), (0, -20)]:
self.canvas.move(tag, diffx, diffy)
self.canvas.update()
time.sleep(0.25)

if __name__ == '__main__':
CanvasEventsDemoTags()
mainloop()

dan akan menghasilkan ouput seperti di bawah ini:




SEKIAN ILMU DARI SAYA,,, THX,,, ^^a

Tidak ada komentar:

Posting Komentar

SELAMAT DATANG DI http://www.hunt-information.com || disini adalah tempatnya kumpulan ilmu dan hiburan yang bisa buat kalian para sobat terhibur dan menambah pengetahuannya || OH iya,,jangan lupa difollow blog saya ya kawan... (^,*) ||