tkinter之canvas(畫布)


畫布的例子:

from tkinter import *
root=Tk()
root.title('簡易繪圖')
can=Canvas(root,width=400,height=300,bg='#00FFFF')
can.create_line((0,0),(400,300),width=8)
can.create_text(300,150,text='我不是葯神電影還不錯!')
can.pack()
root.mainloop()
View Code

用畫布話中國象棋棋盤,參考了:《辛星tkinter教程第二版》中內容。

from tkinter import *
root=Tk()
root.title('中國象棋棋盤手繪')
can=Canvas(root,width=400,height=450)#制作畫布實例,畫布的父窗口是root主窗口
can.create_line((0,3),(400,3),width=2)#制作一條水平線
for i in range(10):#制作10條水平線
    can.create_line((0,i*50),(400,i*50),width=2)
for i in range(8):
    can.create_line((i*50,0),(i*50,200),width=2)
for i in range(8):
    can.create_line((i*50,250),(i*50,450),width=2)
can.create_line((3,0),(3,450),width=2)
can.create_line((400,0),(400,450),width=2)
can.create_line((150,0),(250,100),width=2)
can.create_line((150,100),(250,0),width=2)
can.create_line((150,450),(250,350),width=2)
can.create_line((150,350),(250,450),width=2)
can.create_text(20,225,text='楚河')
can.create_text(380,225,text='漢界')
can.pack()
root.mainloop()
View Code

用geometry()函數來控制窗口的大小:

from tkinter import *
root=Tk()
root.geometry('300x280+150+200')
root.title('為而弗持,功而弗居!')
#root.overrideredirect(1)
#root.iconbitmap()
root.mainloop()
View Code

對比引入ttk(from tkinter.ttk import *)和不引入ttk情況下的界面外觀,有ttk是為了和windows風格接近。

from tkinter import *
from tkinter.ttk import *
root=Tk()
b1=Button(root,text='盛筵必散!')
b1.pack()
root.mainloop()
View Code

 


免責聲明!

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



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