为什么两段代码不同,显示结果却相同
from tkinter import *root = Tk()
text = Text(root,width = 30,height = 30)
text.pack()
text.insert(INSERT,"high")
text.mark_set("here",1.2)
text.mark_gravity("here",LEFT)
text.insert("here","+++++++")
mainloop()
from tkinter import *
root = Tk()
text = Text(root,width = 30,height = 30)
text.pack()
text.insert(INSERT,"high")
text.mark_set("here",1.2)
text.mark_gravity("here",RIGHT)
text.insert("here","+++++++")
mainloop()
为什么两段代码不同(只是把LEFT改成了RIGHT),显示结果却相同
这两段代码之间的唯一区别是text.mark_gravity("here",LEFT)和text.mark_gravity("here",RIGHT)这一行代码中的参数。这个参数指定了插入文本的位置相对于标记的对齐方式。在这两个例子中,标记 "here" 的位置是在插入点之后 1.2 个字符处。
无论是将对齐方式设置为 LEFT 还是 RIGHT,结果都是相同的,因为插入点之前的文本是 "high",宽度不足以使插入点之后的文本 "+++++++" 显示在窗口的右侧。
当text.mark_gravity("here",LEFT)被调用时,文本 "+++++++" 被插入到插入点之后,并且被显示在窗口的左侧,因为它无法完全显示在窗口中。
当text.mark_gravity("here",RIGHT)被调用时,文本 "+++++++" 也被插入到插入点之后,并且被显示在窗口的左侧,因为它也无法完全显示在窗口中。
所以,尽管对齐方式不同,由于插入点之前的文本长度不足以使插入点之后的文本完全显示在窗口中,所以结果显示相同。
页:
[1]