python3.6 tkinter之Text元件

鸟救山
發布: 2020-05-22 11:23:12
原創
175 人瀏覽過

tkinter作為Python GUI編程的標準接口,其視窗控制項非常豐富,本文詳細介紹其Text元件。

Text元件作為顯示和處理多行文字的元件,具有非常靈活的運用方式。

其屬性分為兩類,包括STANDARD OPTIONS和WIDGET-SPECIFIC OPTIONS
。基本描述表格所示

STANDARD屬性值 描述
background 背景顏色
borderwidth 文字控制項的邊框寬度。預設是1-2個像素。
cursor 文字控制項的遊標。預設是字元插入遊標(一般是一個「I-beam」類型的遊標)
#exportselection 是否允許拷貝內容到剪貼簿
#font 字體設定及大小
foreground 前景色
highlightbackground 定義文字控制項沒有獲得輸入焦點狀態下的高亮背景顏色。就是文字控制項的亮邊。
highlightcolor highlightbackground屬性類似。不過是文字控制項獲得輸入焦點時的邊框顏色。
highlightthickness 文字控制項取得輸入焦點時的邊框寬度。一般1-2個像素。
insertbackground #設定文字控制項插入遊標的顏色
insertborderwidth 插入遊標的邊框寬度。如果是非0的數值,遊標會使用RAISED效果的邊框。

insertofftime

insertontime

#這兩個屬性控制插入遊標閃爍效果。就是插入遊標的出現和消失的時間。單位是毫秒。
insertwidth 設定插入遊標的寬度。
padx x軸方向的內邊距
pady y軸方向的內邊距
relief 指定文字控制項的邊框3D效果,預設是flat,可以設定的參數;flat、groove、raised、ridge、solid、sunken
selectbackground 設定選取文字的背景顏色
#selectborderwidth 設定選取區域邊界寬度。
##autoseparators單字之間的間隔。預設值是1height文字控制項的高度。預設是24行。 maxundo最大Undo的次數。預設是0。 spacing1段前間距。 spacing2行間距。 spacing3段後間距。
setgrid boolean類型。為True時,可以讓視窗最大化,並顯示整個Text控制項
takefocus 定義是否可以使用Tab鍵移動輸入焦點到該控制項。

xscrollcommand

yscrollcommand

將捲軸與文字控制項關聯起來,處理捲軸動作。滾動條分別對應水平或垂直滾動條。
WIDGET-SPECIFIC視窗屬性 #描述
state#定義文字控制項的狀態。狀態有二種:NORMAL和DISABLEDtabs#定義按動Tab鍵時候的移動距離。 undo開啟undo/redo功能。 width定義文字控制項的寬度,單位是字元數。 wrap定義如何折行顯示文字控制項的內容

Text基本類別的方法:

方法名稱 #描述
bbox()
傳回一個描述位置及大小的元組(x,y,width,height)
#compare(index1, op, index2)
傳回一個邏輯比較結果
count(self, index1, index2)
計算兩個索引之間相關事物的數量。
debug(self, boolean=None)

#根據BOOLEAN,檢查文字內部B-Tree的一致性

#delete(self, index1, index2=None)
#刪除INDEX1和INDEX2(不包括在內)之間的字元
#dlineinfo(self, index)
返回元組(x,y,width,height,baseline)
edit(self, * args)
此方法控制撤銷機制和

         修改後的標誌。

get(self, index1, index2=None)
傳回索引INDEX1到INDEX2(不包含在內)之間的值
image_create(self, index, cnf={}, **kw)
在索引INDEX位置建立一個內嵌影像。
index(self, index)
以line.char形式傳回INDEX的索引值。
insert(self, index, chars, *args)
在index索引位置插入字元
mark_names(self)
傳回所有的marks值
replace(self, index1, index2, chars, *args)
將索引index1和index2之間的值用chars替換
search(self, pattern, index)
從索引位置開始搜尋正規表示式的內容
tag_add(self, tagName, index1, *args)
新增標記
tag_bind(self, tagName, sequence, func, add=None)
tag_unbind(self, tagName, sequence, funcid=None)
綁定定事件與解除綁定
tag_delete(self, *tagNames)
刪除標記
tag_remove( self, tagName, index1, index2=None)
移除索引之間的特定標記
window_create(self, index, cnf={}, **kw)
在索引位置建立子視窗

Text元件的應用實例。

一是簡單的基本應用

from tkinter import *

class init_window():
   def __init__(self):
      self.tk = Tk ()
       self.window_attritions()
   def window_attritions(self):
       self.tk.title('Text_self_selfp. self.init_data_text.pack()
def show():
   print('hello')
if __name__ == "__main__":
#    win = init_window()
#  win.t   win.tk. mainloop()

python3.6 tkinter之Text元件二是插入元件

#button = Button(win.init_data_text,text='text中插入button',command=show)

win.init_data_text.window_create(INSERT,window=button)


python3.6 tkinter之Text元件三是插入圖片


win.init_data_text.image_create(END, image=PhotoImage(file='1.gif'))


從上邊的介紹可以看出Text元件的索引值應用程式非常多,而下面介紹下索引值的型別


索引類型#line.columnline.end#INSERTENDuser-defined marksuser-defined tags("tag.first", "tag.last")#window coordinate("@x,y")
描述
行/列
某行的結尾
遊標位置
文字的結尾
自訂標記

視窗定位

以上是python3.6 tkinter之Text元件的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
1
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!