10.2 文本控件的位置索引
文本控件因为可以编辑多行多列文字,如何定位位置就是一个重要的问题。在文本控件中,使用多种方法定位位置。
10.2.1 位置索引
(1)’行.列’(‘line.column’)
就是指定行列的方法定位。和数学里面的平面坐标是一个原理。(x,y)表示一个坐标点,(行,列)表示一个位置。比如’1.0’表示第一行的第一个字符前,’3.4’表示第三行第五个字符前的位置。注意,起始行是1,而不是0。在程序中使用字符字符串来表示。
(2)’行.end’(‘line.end’)
用’end’表示行尾。可以免去计算字符的麻烦,直接定位到一行的末尾。比如’8.end’
(3)tk.INSERT
插入光标的位置
(4)tk.CURRENT
表示最靠近鼠标指针的字符位置。注意,这个与插入是不同的。插入的位置是插入光标的位置。而当前表示的是最靠近鼠标指针的字符位置。如果按下鼠标的按钮,那么“当前”的位置就固定了,即使移动鼠标也不会改变,直到释放鼠标按键,才会更新。
(5)tk.END
文本控件的最后一个字符后面。需要说明的该索引针对的是整个文本控件,而不是当前行。
(6)tk.SEL_FIRST
如果当前文本有一块区域被选中,tk.SEL_FRIST表示选中区域第一个字符的前面位置。
(7)tk.SEL_LAST
tk.SEL_LAST表示选中区域最后一个字符后面的位置。
(8)’标识名字’(‘markname’)
具体