Heim  >  Artikel  >  Web-Frontend  >  Tkinter Tutorial Canvas Kapitel (3)

Tkinter Tutorial Canvas Kapitel (3)

黄舟
黄舟Original
2017-01-17 10:15:051469Durchsuche


'''Tkinter Tutorial Canvas Kapitel (3)'''


''16. Element verschieben'''


# - * - Codierung: cp936 -*-


# move gibt x, y am Offset an


from Tkinter import *


root = Tk( )


# Erstellen Sie eine Leinwand und stellen Sie deren Hintergrundfarbe auf Weiß ein.


cv = Canvas(root,bg = 'white')

# Erstellen Sie zwei identische Rechtecke. Vergleichen Sie den Unterschied vor und nach dem Umzug


rt1 = cv.create_rectangle(
10,10,110,110,
tags = ('r1','r2','r3'))
cv.create_rectangle(
10,10,110,110,
tags = ('r1','r2','r3'))


# Move rt1


cv.move(rt1,20,-10)
cv.pack()
root.mainloop()


# move can Geben Sie den relativen Versatz von x und y an, der negativ sein kann. -


# delete Das angegebene Element löschen






# Zwei Rechtecke erstellen

from Tkinter import *
root = Tk()
cv = Canvas(root,bg = 'white')


# ID verwenden, um rt1 zu löschen


cv.delete(rt1)

rt1 = cv.create_rectangle(
10,10,110,110,
tags = ('r1','r2','r3'))
r2 = cv.create_rectangle(
20,20,110,110,
tags = ('s1','s2','s3'))

# Tag verwenden, um r2 zu löschen





# Zwei Methoden zum Löschen von Elementen (ID/Tag)

''18. Element zoomen''
cv.delete('s1')
cv.pack()
root.mainloop()


# -*- Codierung: cp936 -*-


# Maßstabsskalierungselement, Berechnungsformel: (Koordinaten - Offset)*Maßstab + Offset





# Erstelle zwei Rechtecke


from Tkinter import *
root = Tk()
cv = Canvas(root,bg = 'white')


# Vergrößere die Y-Koordinate auf die ursprünglichen 2 Ziffern und den X-Koordinatenwert Unverändert

rt1 = cv.create_rectangle(
10,10,110,110,
tags = ('r1','r2','r3'))



# Die Parameter der Skala sind (self,xoffset,yoffset,xscale,yscale)

'' Bind item and event'''
cv.scale(rt1,0,0,1,2)
cv.pack()
root.mainloop()


# -*- programming: cp936 -*-


# Verwenden Sie tag_bind, um Element und Ereignis zu binden





# Erstelle eine Leinwand und setze ihre Hintergrundfarbe auf Weiß

from Tkinter import *
root = Tk()


# Erstelle drei Rechtecke


cv = Canvas(root,bg = 'white')


# Element und Ereignis binden

rt1 = cv.create_rectangle(
10,10,110,110,
width = 8,
tags = ('r1','r2','r3'))
def printRect(event):
print 'rectangle'



# Nur Das Ereignis wird nur ausgelöst, wenn das Rand des Rechtecks ​​wird angeklickt

'''20. Bindungsereignis hinzufügen'''
cv.tag_bind(&#39;r1&#39;,&#39;<Button-1>&#39;,printRect)
cv.pack()
root.mainloop()


# -*- Kodierung: cp936 -*-


# Verwenden Sie tag_bind, um Elemente und Ereignisse zu binden, was nicht mit den Testergebnissen in der Referenz übereinstimmt.






# Erstellen Sie eine Leinwand und stellen Sie deren Hintergrundfarbe auf Weiß ein

from Tkinter import *
root = Tk()





# Drei Rechtecke erstellen

cv = Canvas(root,bg = &#39;white&#39;)





# Element binden und Ereignis mit der linken Maustaste anklicken

rt1 = cv.create_rectangle(
10,10,110,110,
width = 8,
tags = (&#39;r1&#39;,&#39;r2&#39;,&#39;r3&#39;))
def printRect(event):
print &#39;rectangle&#39;
def printLine(event):
print 'line'


# Element binden und Rechtsklick-Ereignis


cv.tag_bind(&#39;r1&#39;,&#39;<Button-1>&#39;,printRect)

# Das Ereignis wird nur ausgelöst, wenn der Rand des Rechtecks ​​ist angeklickt, nicht Mit dem Parameter „Hinzufügen“ wird standardmäßig eine Verarbeitungsfunktion zu diesem Element hinzugefügt. Dies ersetzt nicht die ursprüngliche Ereignisfunktion: Reagieren Sie sowohl auf die linke als auch auf die rechte Taste. ' 21. Neu binden Das Element und die vorhandenen Tags''


# -*- programming: cp936 -*-

cv.tag_bind(&#39;r1&#39;,&#39;<Button-3>&#39;,printLine)
cv.pack()
root.mainloop()

# Verwenden Sie tag_bind, um das Element zu binden und Ereignis, Testergebnisse Widersprüchlich mit der Aussage in der Referenz






# Erstellen Sie eine Leinwand und stellen Sie deren Hintergrundfarbe auf Weiß ein


cv = Canvas (root,bg = 'white')

# Drei Rechtecke erstellen
from Tkinter import *
root = Tk()






# Binden Element nach links Schlüsselereignis


cv.tag_bind('r1','15ce60bce8d7fb5203c17f3141fee655',printRect)

# Element binden und Ereignis mit der rechten Maustaste anklicken
rt1 = cv.create_rectangle(
10,10,110,110,
width = 8,
tags = (&#39;r1&#39;,&#39;r2&#39;,&#39;r3&#39;))
def printRect(event):
print &#39;rectangle&#39;
def printLine(event):
print 'line'


cv.tag_bind('r1','5511d829731dc3fdf5788f4a948f4312',printLine)


# Erstelle eine Zeile und setze ihre Tags auf 'r1'






# Nachdem Sie das Ereignis an das Tag ('r1') gebunden haben, erstellen Sie ein neues Element und geben Sie das Tag des gebundenen Ereignisses an. Das neu erstellte Element ist das gleiche Es ist auch an Ereignisse gebunden, was nicht mit der Aussage in der Referenz übereinstimmt


Das Obige ist der Inhalt des Canvas-Kapitels (3) des Tkinter-Tutorials Bitte achten Sie auf die chinesische PHP-Website (www.php.cn)!

cv.create_line(10,200,100,200,width = 5,tags = &#39;r1&#39;)
cv.pack()
root.mainloop()
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn