1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
| # -*-coding:Utf-8 -*-
from __future__ import unicode_literals
import Tkinter, PIL, Image, ImageTk
class Interface(Tkinter.Tk) :
def __init__(self, parent) :
Tkinter.Tk.__init__(self, parent)
self.parent = parent
self.initialize()
# Creation de nos widgets
def initialize(self) :
self.grid()
self.apercu_logo="Audi.jpg"
self.photo = ImageTk.PhotoImage(Image.open(self.apercu_logo))
self.Largeur = 818
self.Hauteur = 508
self.Logo = Tkinter.Canvas(self, width=self.Largeur, height=self.Hauteur)
self.Logo.config(height=self.photo.height(),width=self.photo.width())
self.item = self.Logo.create_image(0,0,anchor="nw", image=self.photo)
self.Logo.grid(column=0, row=0, sticky="EW")
self.Logo.bind("<Button-1>", self.MouseDown)
self.Logo.bind("<Button1-Motion>", self.MouseMove)
def MouseDown(self, event):
"Quand on clique gauche"
self.currObject =None
# event.x et event.y contiennent les coordonnées du clic effectué
self.x1, self.y1 = event.x, event.y
def MouseMove(self, event):
"Quand on bouge la souris bouton gauche enfoncé"
self.x2, self.y2 = event.x, event.y
#self.dx, self.dy = self.x3 -self.x1, self.y3 -self.y1
self.Position = list()
if self.x1 < self.x2 :
self.Position.append(self.x1)
if self.y1 < self.y2 :
self.Position.append(self.y1)
self.Position.append(self.x2)
self.Position.append(self.y2)
else :
self.Position.append(self.y2)
self.Position.append(self.x2)
self.Position.append(self.y1)
else :
self.Position.append(self.x2)
if self.y1 < self.y2 :
self.Position.append(self.y1)
self.Position.append(self.x1)
self.Position.append(self.y2)
else :
self.Position.append(self.y2)
self.Position.append(self.x1)
self.Position.append(self.y1)
try :
self.Logo.delete(self.rectangle)
self.rectangle = self.Logo.create_rectangle(self.Position[0], self.Position[1],\
self.Position[2], self.Position[3], \
outline='red', width=2)
except :
self.rectangle = self.Logo.create_rectangle(self.Position[0], self.Position[1],\
self.Position[2], self.Position[3], \
outline='red', width=2)
if __name__ == "__main__" :
app = Interface(None)
app.title("Bilderteil Wähler - Aegim")
app.mainloop() |
Partager