畫布(Canvas)控件
畫布(Canvas
)是用於繪制圖片或其他復雜布局的矩形區域。您可以在上面放置圖形、文本、控件或框架(Frame)。有關在 Canvas
上創建對象的方法,請參見以下部分:
- .create_arc():一個橢圓的切片。
- .create_bitmap():一個位圖(
bitmap
)圖像。 - .create_image():一個圖形圖像。
- .create_line():一個或多個線段。
- .create_oval():一個橢圓; 也可以使用它來繪制圓形,這是橢圓的特殊情況。
- .create_polygon():一個多邊形。
- .create_rectangle():一個矩形。
- .create_text():文本。
- .create_window():一個矩形的窗口。
創建一個 Canvas
對象:
w = tk.Canvas(parent, option=value, ...)
構造函數返回一個新的 Canvas
控件,可選參數(option
)包括:
參數 | 描述 |
---|---|
bd 或者 borderwidth | 畫布外側邊框的寬度 |
bg 或者 background | 畫布背景色,默認顏色是淺灰色:#E4E4E4 |
closeenough | 一個浮點數,用於指定鼠標與要在其中考慮的項目之間的距離 |
confine | 如果為true(默認值),則畫布無法在scrollregion之外滾動 |
cursor | 畫布上使用的光標 |
height | 畫布高度 |
highlightbackground | 當控件沒有對焦時,焦點的顏色會突出顯示 |
highlightcolor | 焦點高亮顯示的顏色 |
highlightthickness | 焦點高光的厚度 |
relief | 畫布浮雕樣式,默認是:tk.FLAT |
scrollregion | 一個元組 (w, n, e, s) 定義畫布可以滾動的區域有多大,其中 w 是左側,n 是頂部,e 是右側,s 是底部。 |
selectbackground | 用於顯示所選項目的背景顏色 |
selectborderwidth | 所選項目周圍使用的邊框寬度 |
selectforeground | 所選項目展示使用的前景色 |
takefocus | 通常,焦點僅在設置了鍵盤綁定時才會使用 Tab 鍵循環瀏覽此小部件(有關鍵盤綁定的概述,請參閱第 54 節“事件”)。 如果將此選項設置為 1,則焦點將始終訪問此小部件。 將其設置為 '' 以獲取默認行為。 |
width | 畫布 X 方向的大小(寬度) |
xscrollincrement | 通常,畫布可以水平滾動到任何位置。 您可以通過將 xscrollincrement 設置為零來獲得此行為。 如果將此選項設置為某個正尺寸,則畫布只能定位在該距離的倍數上,並且該值將用於按滾動單位滾動,例如當用戶單擊滾動條末端的箭頭時。 |
xscrollcommand | 如果畫布是可滾動的,請將此選項設置為水平滾動條的 .set() 方法。 |
yscrollincrement | 像 xscrollincrement 一樣工作,但控制垂直移動。 |
yscrollcommand | 如果畫布是可滾動的,這個選項應該是垂直滾動條的 .set() 方法。 |