*18.2.23 dchars(args)
*args传递的参数有3个:
(1)tagOrId:对象ID或者标签tag
(2)from:开始的字符位置
(3)to:可选项,结束的字符位置。
dchars的作用就是从tagOrId指定对象中,删除字符。删除从from指定的位置开始,到to指定的位置结束。如果to没有指定,则只删除一个字符。
import tkinter as tk
root=tk.Tk()
root.geometry('320x240')
b1=tk.Canvas(root)
t=b1.create_text(120,20)
b1.insert(t,tk.INSERT,'新年快乐')
def delete():
b1.dchars(t,0)
b2=tk.Button(root,text='Delete',command=delete)
b2.pack()
b1.pack()
root.mainloop()
结果:
*18.2.24 delete(args)
*args传递的参数只有一个:
(1)tagOrId:表示对象ID或者tag(标签)
delete的作用是删除tagOrId指定的对象。对象可以是ID,也可以是标签tag。如果指定的对象不存在,也不会产生错误。
import tkinter as tk
root=tk.Tk()
root.geometry('320x240')
b1=tk.Canvas(root)
t=b1.create_text(120,20,text='新年快乐')
def delete():
b1.delete(t)
b2=tk.Button(root,text='Delete',command=delete)
b2.pack()
b1.pack()
root.mainloop()
结果:
说明:点击’Delete’按钮之后,’新年快乐’对象会被删除。
*18.2.25 dtag(args)
*args可以有两个参数:
(1)tagOrId:对象ID或者标签tag。
(2)tagDelete:指定要删除的tag。如果没有设置此参数,表示删除tagOrId指定对象的所有tag。
dtag()的作用是从tagOrId指定的对象中删除指定的标签tag。如果tagOrId指定的对象不存在或者tagDelete不存在,并不会产生错误。
import tkinter as tk
root=tk.Tk()
root.geometry('320x240')
b1=tk.Canvas(root)
t=b1.create_text(120,20,text='新年快乐',tag='txt')
def dtag():
b1.dtag(t,'txt')
print(b1.gettags(t))
b2=tk.Button(root,text='Dtag',command=dtag)
b2.pack()
b1.pack()
print(b1.gettags(t))
root.mainloop()
说明:tag(标签)的信息可以通过gettags()方法获取。
18.2.26 find_above(tagOrId)
返回在 tagOrId参数指定的对象之上的 ID。如果tagOrId是最顶端的对象,那么返回一个空元组。如果有多个对象符合要求,会返回最顶端的那个对象。tagOrId可以是对象ID,也可以是tag。
(1)tagOrId: 指定对象ID或者标签tag。
import tkinter as tk
root=tk.Tk()
root.geometry('320x240')
b1=tk.Canvas(root)
t=b1.create_text(120,20,text='新年快乐',tag='txt')
t2=b1.create_text(220,20,text='新年快乐2',tag='txt2')
def find_above():
tag=b1.find_above(t)
print(tag)
b2=tk.Button(root,text='Find Above',command=find_above)
b2.pack()
b1.pack()
root.mainloop()
结果:
(2,)
说明:t2的值是2,所以返回的元组是(2,)
18.2.27 find_all()
返回 Canvas 控件上所有的对象。返回的格式是一个包括所有对象ID的元组。最顶端的对象在元组的最后一个。
18.2.28 find_below(tagOrId)
返回在 tagOrId参数指定的对象之下的 ID。如果tagOrId是最底层的对象,那么返回一个空