tkinter學習系列之(八) Canvas控件


目錄

前言

由於最近想在tkinter里內嵌matplotlib,由於用到tkinter里的carves控件,先學習一下。

carves就是畫布的意思,用於畫圖。

(一)carves創建方法

(1)說明:

與其他的控件一樣,carves的創建方也是在tk里。

(2)源代碼:

import tkinter as tk

win = tk.Tk()
win.geometry("600x400+200+100")

# 創建畫布
canvas = tk.Canvas(win, bg="orange")
canvas.place(relx=0.05, rely=0.05, relwidth=0.9, relheight=0.9)

win.mainloop()

(3)輸出效果:

01.png

(二)carves的畫圖方法

(1)說明:

方法 說明 參數
.create_line() 畫線 (起始坐標),(終點坐標),width=線寬,fill=顏色
.create_arc() 畫圓弧 (起始坐標),(終點坐標),width=線寬,fill=顏色
.create_rectangle() 畫矩形 (起始坐標),(終點坐標),fill='填充的顏色, outline=邊框的顏色
.create_oval() 畫橢圓 (外接矩陣的四個坐標),fill='填充的顏色, outline=邊框的顏色
.create_polygon() 畫多邊形 d多個點的坐標,fill='填充的顏色, outline=邊框的顏色
.create_text() 顯示文字 text="文字"
.delete() 刪除對象 創建線返回的對象

(2)源代碼:

import tkinter as tk

win = tk.Tk()
win.geometry("600x400+200+100")
canvas = tk.Canvas(win, bg="orange")
canvas.place(relx=0.05, rely=0.05, relwidth=0.9, relheight=0.9)

# 畫一條實線, fill:填充的顏色
line1 = canvas.create_line((0, 0), (100, 100), width=5, fill="red")

# 畫一條虛線 dash=(1, 1)
canvas.create_line((200, 200), (200, 300), width=5, fill="green", dash=(1, 1))

# 畫一個圓弧
canvas.create_arc((100, 100), (200, 200), width=5)

# 顯示文字
canvas.create_text((300, 100), text="文字", font=("微軟雅黑", 18))

# 繪制矩形, outline:線條顏色
canvas.create_rectangle(50, 25, 150, 75, fill='blue', outline='green', width=5)

# 繪制橢圓
canvas.create_oval(200, 25, 350, 75, fill='pink', outline='green', width=5)

# 繪制多邊形
point = [(100, 100), (100, 200), (200, 300), (300, 400), (400, 500)]
canvas.create_polygon(point, outline='green', fill='yellow')


def dele_line():
    canvas.delete(line1)


btn = tk.Button(canvas, text="刪除", command=dele_line)
btn.place(relx=0.4, rely=0.8)

win.mainloop()

(3)輸出效果:

02.png

作者:Mark

日期:2019/02/13 周三


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM