程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python tkinter - 第10章 文本控件(Text)文本位置索引

編輯:Python

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’)
具體的使用方法是先定義一個標識。然後用這個標識來作為索引。

(9)‘tag.first’
定義tag來標識一個區域。tag.frist就是該區域的起始位置。

(10)‘tag.last’
tag代表區域的最後位置

(11)‘@x,y’
最靠近坐標(x,y)的位置。

(12)+n chars
向前移動n個字符。比如,’2.3+5 chars’ 或者’2.3+5c’ 表示第二行,第8個字符的位置(3+5=8)

(13)-n chars
向後移動n個字符

(14)+n lines
向前移動n行

(15)-n lines
向後移動n行

(16)linestart
移動到行首

(17)lineend
移動到行尾

(18)wordstart
移動到單詞的第一個字符前。

10.2.2 mark
mark把’行.列’定義成一個標識。相當於一個別名。mark的名字可以是任意的字符串,但不能含有空格以及’.’。具體的mark的用法見10.3節有關mark的方法。

10.2.3 tags
tags是標識一個特定的區域。同一區域可以有不同的tag名字。有了tag就可以設置字體、顏色、大小等等。與mark區別在於:mark是標識了一個點,而tag是標識了一個區域。有關tag的具體用法請參考10.3節有關tag的方法。


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved