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

Tkinter Tutorial Canvas Kapitel (3)

黄舟
Freigeben: 2017-01-17 10:15:05
Original
1495 Leute haben es durchsucht


'''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')
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

# 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'))
Nach dem Login kopieren


# Move rt1


cv.move(rt1,20,-10)
cv.pack()
root.mainloop()
Nach dem Login kopieren


# 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')
Nach dem Login kopieren
Nach dem Login kopieren


# 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'))
Nach dem Login kopieren

# 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()
Nach dem Login kopieren


# -*- Codierung: cp936 -*-


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





# Erstelle zwei Rechtecke


from Tkinter import *
root = Tk()
cv = Canvas(root,bg = 'white')
Nach dem Login kopieren
Nach dem Login kopieren


# 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'))
Nach dem Login kopieren



# 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()
Nach dem Login kopieren


# -*- 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()
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren


# Erstelle drei Rechtecke


cv = Canvas(root,bg = 'white')
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren


# Element und Ereignis binden

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



# 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()
Nach dem Login kopieren


# -*- 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()
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren





# Drei Rechtecke erstellen

cv = Canvas(root,bg = &#39;white&#39;)
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren





# 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'
Nach dem Login kopieren
Nach dem Login kopieren


# Element binden und Rechtsklick-Ereignis


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

# 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()
Nach dem Login kopieren

# 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()
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren






# Binden Element nach links Schlüsselereignis


cv.tag_bind('r1','',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'
Nach dem Login kopieren
Nach dem Login kopieren


cv.tag_bind('r1','',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 (m.sbmmt.com)!

cv.create_line(10,200,100,200,width = 5,tags = &#39;r1&#39;)
cv.pack()
root.mainloop()
Nach dem Login kopieren
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage