2 Tkinter 画布方法
本节罗列 Canvas 对象的方法,供需要的读者编程时参考。具体用法请查阅参考资料。
创建图形项的方法
- create_arc(<限定框>, <选项>):创建弧形,返回标识号
- create_bitmap(<位置>, <选项>):创建位图,返回标识号
- create_image(<位置>, <选项>):创建图像,返回标识号
- create_line(<坐标序列>, <选项>):创建线条,返回标识号
- create_oval(<限定框>, <选项>):创建椭圆形,返回标识号
- create_polygon(<坐标序列>, <选项>):创建多边形,返回标识号
- create_rectangle(<限定框>, <选项>):创建矩形,返回标识号
- create_text(<位置>, <选项>):创建文本,返回标识号
- create_window(<位置>, <选项>):创建窗口型构件,返回标识号
操作画布上图形项的方法
- delete(<图形项>):删除图形项
- itemcget(<图形项>, <选项>):获取某图形项的选项值
- itemconfig(<图形项>, <选项>):设置图形项的选项值
- itemconfigure(<图形项>, <选项>):同上
- coords(<图形项>):返回图形项的坐标
- coords(<图形项>, x0, y0, x1, y1, ..., xn, yn):改变图形项的坐标
- bbox(<图形项>):返回图形项的界限框(坐标)
- bbox():返回所有图形项的界限框
- canvasx(<窗口坐标 x>):将窗口坐标 x 转换成画布坐标 x
- canvasy(<窗口坐标 y>):将窗口坐标 y 转换成画布坐标 y
- type(<图形项>):返回图形项的类型
- lift(<图形项>):将图形项移至画布最上层
- tkraise(<图形项>):同上
- lower(<图形项>):将图形项移至画布最底层
- move(<图形项>, dx, dy):将图形项向右移动 dx 单位,向下移动 dy 单位
- scale(<图形项>, <x 比例>, <y 比例>, <x 位移>, <y 位移>):根据比例缩放图形项
查找画布上图形项的方法
下列方法用于查找某些项目组。对每个方法,都有对应的 addtag 方法。不是处理 find 方法返回的每个项目,而是为一组项目增加一个临时标签、一次性处理所有具有该标签的项 目、然后删除该标签,常常可以得到更好的性能。
- find_above(<图形项>):返回位于给定图形项之上的图形项
- find_all() :返回画布上所有图形项的标识号构成的元组,等于 find_withtag(ALL)
- find_below(<图形项>):返回位于给定图形项之下的图形项
- find_closest(x, y):返回与给定位置最近的图形项,位置以画布坐标给出
- find_enclosed(x1, y1, x2, y2):返回被给定矩形包围的所有图形项
- find_overlapping(x1, y1, x2, y2):返回与给定矩形重叠的所有图形项
- find_withtag(<图形项>):返回与给定标识匹配的所有图形项
操作标签的方法
- addtag_above(<新标签>, <图形项>):为位于给定图形项之上的图形项添加新标签
- addtag_all(<新标签>):为画布上所有图形项添加新标签,即 addtag_withtag(<新 标签>, ALL)
- addtag_below(<新标签>, <图形项>):为位于给定图形项之下的图形项添加新标签
- addtag_closest(<新标签>, x, y):为与给定坐标最近的图形项添加新标签
- addtag_enclosed(<新标签>, x1, y1, x2, y2):为被给定矩形包围的所有图形项添 加新标签
- addtag_overlapping(<新标签>, x1, y1, x2, y2) :为与给定矩形重叠的所有图 形项添加新标签
- addtag_withtag(<新标签>, <标签>):为具有给定标签的所有图形项添加新标签
- dtag(<图形项>, <标签>):为给定图形项删除给定标签
- gettags(<图形项>:返回与给定图形项关联的所有标签