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(<图形项>, , , , ):根据比例缩放图形项

查找画布上图形项的方法

下列方法用于查找某些项目组。对每个方法,都有对应的 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(<图形项>:返回与给定图形项关联的所有标签