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

Tkinter Tutorial Canvas Kapitel (4)

黄舟
Freigeben: 2017-01-17 10:18:24
Original
1510 Leute haben es durchsucht

''Tkinter Tutorial Canvas Kapitel (4)''


''22. Zeichne einen Bogen''


# -*- Codierung : cp936 -*-


# Erstellen Sie einen ARC

from Tkinter import *
root = Tk()
Nach dem Login kopieren

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

cv = Canvas(root,bg = 'white')
cv.create_arc((10,10,110,110),)
cv.pack()
root.mainloop()
Nach dem Login kopieren


# Erstellen Sie einen ARC mit Standardparametern. Das Ergebnis ist ein 90-Grad-Sektor


'''23 Legen Sie den Bogenstil fest'''


# -*- Codierung: cp936 -*-


# create create_arc.


from Tkinter import *
root = Tk()
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren


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


cv = Canvas(root,bg = 'white')
d = {1:PIESLICE,2:CHORD,3:ARC}
for i in d:
cv.create_arc((10,10 + 60*i,110,110 + 60*i),style = d[i])
print i,d[i],
cv.pack()
root.mainloop()
Nach dem Login kopieren


# Verwenden Sie drei Stile, um jeweils Fächer-, Bogen- und Bogenformen zu erstellen


'''24. Stellen Sie den Winkel des Bogens ein'''


# -*- Kodierung: cp936 -*-


# Verwendung start/extent, um den Startwinkel und den Versatzwinkel anzugeben


from Tkinter import *
root = Tk()
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

# Erstellen Sie eine Leinwand und legen Sie deren Hintergrundfarbe auf Weiß fest


cv = Canvas(root,bg = 'white')
d = {1:PIESLICE,2:CHORD,3:ARC}
for i in d:
cv.create_arc(
(10,10 + 60*i,110,110 + 60*i),
Nach dem Login kopieren

style = d[i], #Stil angeben


start = 30, #Startwinkel angeben


extent = 30 # Winkel angeben offset


)


cv.pack()


root.mainloop()


# Verwendung drei Stile, Start gibt den Startwinkel an; Ausmaß gibt den Winkelversatz an


''' 25. Bitmap zeichnen'''


# - *- Kodierung: cp936 - *-


# Bitmap verwenden, um eine Bitmap zu erstellen create_bitmap


aus Tkinter-Import *


root = Tk( )


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

cv = Canvas(root,bg = 'white')
d = {1:'error',2:'info',3:'question',4:'hourglass'}
for i in d:
cv.create_bitmap((20*i,20*i),bitmap = d[i])
cv.pack()
root.mainloop()
Nach dem Login kopieren


# Verwenden Sie das Bitmap-Attribut, um den Namen der Bitmap anzugeben, den ersten Parameter dieser Funktion ist ein Punkt (x, y), der die obere linke Position des Bitmap-Speicherorts angibt.


''26. GIF-Bild zeichnen''


# -*- Kodierung: cp936 -*-


# Erstellen gif image create_image


from Tkinter import *


root = Tk()


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

cv = Canvas(root,bg = 'white')
img = PhotoImage(file = 'c:/python.gif')
cv.create_image((150,150),image = img)
cv.pack()
root.mainloop()
Nach dem Login kopieren


# Verwenden Sie zuerst PhotoImage, um ein GIF-Bild zu erstellen, und legen Sie dann das Bildattribut auf das neu erstellte Bild fest


'' '27 .Zeichne eine gerade Linie'''


# -*- programming: cp936 -*-


# Erstelle eine gerade Linie mit einem Pfeil create_line


from Tkinter import *


root = Tk()


# Erstellen Sie eine Leinwand und setzen Sie ihre Hintergrundfarbe auf Weiß

cv = Canvas(root,bg = 'white')
d = [(0,'none'),(1,'first'),(2,'last'),(3,'both')]
for i in d:
cv.create_line(
(10,10 + i[0]*20,110,110+ i[0] * 20), # 设置直线的起始、终点
arrow = i[1], # 设置直线是否使用箭头
arrowshape = '40 40 10' # 设置箭头的形状(填充长度,箭头长度,箭头宽度
)
cv.pack()
root.mainloop()
Nach dem Login kopieren


# Verwenden Sie das Pfeilattribut, um zu steuern, ob Pfeile angezeigt werden sollen


'''28 Das Verbindungsstilattribut einer geraden Linie''


# -*- Kodierung: cp936 -*-


# Erstellen Sie eine gerade Linie und verwenden Sie das Joinstyle-Attribut


aus dem Tkinter-Import *


root = Tk()


# Erstelle eine Leinwand und setze ihre Hintergrundfarbe auf Weiß


cv = Canvas(root,bg = 'white')
d = [(0,'none','bevel'),(1,'first','miter'),(2,'last','round'),(3,'both','round')]
for i in d:
cv.create_line(
(10,10 + i[0]*20,110,110+ i[0] * 20), # 设置直线的起始、终点
arrow = i[1], # 设置直线是否使用箭头
arrowshape = '8 10 3', # 设置箭头的形状(填充长度,箭头长度,箭头宽度
joinstyle = i[2],
)
cv.pack()
root.mainloop()
Nach dem Login kopieren


# Stellen Sie die Verbindungsstilattribute der geraden Linien auf Abschrägung/Gehrung/Rundung ein, um die Wirkung zu testen.


'''29. Zeichnen Sie eine Ellipse'''


# -*- Kodierung: cp936 -*-


# Zeichnen Um eine Ellipse zu erstellen, verwenden Sie das Attribut create_oval


from Tkinter import *


root = Tk()


#, um eine Leinwand zu erstellen und festzulegen seine Hintergrundfarbe auf Weiß


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


# Erstelle eine Ellipse mit einer Länge von 200 und einer Breite von 100

cv.create_oval((10,10,210,110),fill = 'red')
cv.pack()
root.mainloop()
Nach dem Login kopieren

# Geben Sie die Länge und Breite der Ellipse an. Ein Kreis ist ein Sonderfall, bei dem Länge und Breite gleich sind.


'''30. Polygon erstellen'''


# -*- Kodierung: cp936 -*-


# Polygon erstellen (Dreieck)


from Tkinter import *


root = Tk()


# Zeichnen Sie eine Leinwand und stellen Sie ihre Hintergrundfarbe auf Weiß ein


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


# Erstelle ein rechtwinkliges Dreieck


cv.create_polygon((10,10,10,200,100,200),fill = 'red')
cv.pack()
root.mainloop()
Nach dem Login kopieren

# Geben Sie die Koordinaten von drei Punkten an. Die Koordinaten der drei Punkte müssen der Definition eines Dreiecks entsprechen.


'''31. Grafiken ändern'''


# -*- Kodierung: cp936 -*-


# Polygon erstellen create_ploygon(Triangle)


from Tkinter import *


root = Tk()


# Erstelle eine Leinwand und setze ihre Hintergrundfarbe auf Weiß


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


# Erstelle ein rechtwinkliges Dreieck

cv.create_polygon((10,10,10,200,100,200),
#smooth = True, # 平滑处理,但未找到控制此参数的项
splinesteps = 0, # 不明白是控制什么的???
)
cv.pack()
root.mainloop()
Nach dem Login kopieren


# Smooth/Splinesteps wird verwendet, um die gezeichneten Grafiken zu ändern. Ich weiß nicht, welche anderen Funktionen diese beiden Parameter haben.


'''32. Text zeichnen'''


# -*- Kodierung: cp936 -*-


# Text verwenden create_text

from Tkinter import *
root = Tk()
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

# Erstelle eine Leinwand und setze ihre Hintergrundfarbe auf Weiß


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


# Erstellen Sie ein Textobjekt, die Standardeinstellung ist zentrierte Ausrichtung


cv.create_text((10,10),text = 'Hello Text',
anchor = W
)
cv.pack()
root.mainloop()
Nach dem Login kopieren

# Verwenden Sie den Anker, um die Position des Textes zu steuern, und verwenden Sie Ausrichten, um die Ausrichtung zu steuern


'''33. Text auswählen'''


# -*- Kodierung: cp936 -*-


# Verwenden Sie Text create_text

from Tkinter import *
root = Tk()
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren


# 创建一个Canvas,设置其背景色为白色


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


# 创建一个文字对象,默认设置为居中对齐

txt = cv.create_text((10,10),text = 'Hello Text',
anchor = W
)
Nach dem Login kopieren


# 设置文本的选中起始位置


cv.select_from(txt,2)


# 设置文本的选中结束位置

cv.select_to(txt,5)
cv.pack()
root.mainloop()
Nach dem Login kopieren

# 使用anchor控制文字的位置,使用justify控制对齐方式


'''34.创建组件'''


# -*- coding: cp936 -*-


# 使用子组件create_window

from Tkinter import *
root = Tk()
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

# 创建一个Canvas,设置其背景色为白色


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


# 创建一个Button对象,默认设置为居中对齐


def printWindow():
print 'window'
bt = Button(cv,text = 'ClickMe',command = printWindow)
Nach dem Login kopieren


#修改button在canvas上的对齐方式


cv.create_window((10,10),window = bt,anchor = W)


# 新创建的line对象与button有重叠


cv.create_line(10,10,20,20)


# 新创建的line不在button之上,即没有重叠


cv.create_line(30,30,100,100)
cv.pack()
root.mainloop()
Nach dem Login kopieren


# 使用anchor组件在Canvas上的位置,默认情况下为居中对齐,这样使用后其它的item将不能再使用button战胜的那块区域

以上就是Tkinter教程之Canvas篇(4)的内容,更多相关内容请关注PHP中文网(m.sbmmt.com)!


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