畫布(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() 方法。 |
