canvas 畫布
canvas(畫布)是一個矩形區域,可以放置圖形、圖像、組件等。
from tkinter import * import random from tkinter import messagebox class Application(Frame): """一個經典的GUI程序的寫法""" def __init__(self, master=None): super().__init__(master) # super代表的是父類的定義,而不是父類對象 self.master = master self.pack() self.createWidget() def createWidget(self): """創建組件""" self.canvas = Canvas(self, width=400, height=350, bg='blue') self.canvas.pack() line = self.canvas.create_line(12, 12, 24, 24, 39, 52) # 畫一條直線 rect = self.canvas.create_rectangle(50, 50, 100, 100) # 畫一個矩形 oval = self.canvas.create_oval(50, 50, 100, 100) # 畫一個圓,坐標兩雙,為圓的邊界矩形左上角和底部右下角 global pthoto pthoto = PhotoImage(file='20191117174112450.gif') self.canvas.create_image(160, 160, image=pthoto) Button(self, text='畫十個圓', command=self.tenOval).pack(side='left') def tenOval(self): for i in range(0, 10): x1 = random.randrange(int(self.canvas['width']) / 2) x2 = random.randrange(int(self.canvas['height']) / 2) y1 = 9 + random.randrange(int(self.canvas['width']) / 2) y2 = 9 + random.randrange(int(self.canvas['height']) / 2) self.canvas.create_oval(x1, x2, y1, y2) if __name__ == "__main__": root = Tk() root.geometry('400x400+200+200') app = Application(master=root) root.mainloop()


————————————————
版權聲明:本文為CSDN博主「whyfail」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/weixin_44733660/article/details/103111094
