python3 tkinter電子書_Python3 Tkinter-Text

1.創建

from tkinter import *

root=Tk()

t=Text(root)

t.pack()

root.mainloop()

2.添加文本

from tkinter import *

root=Tk()

t=Text(root)

t.insert(1.0,'0123456789')

t.insert(1.0,'ABDCEFGHIJ')

t.pack()

root.mainloop()

3.設置添加位置

from tkinter import *

root=Tk()

t=Text(root)

for i in range(1,10):

t.insert(1.0,'0123456789\n')

def insertText():

t.insert(INSERT,'jcodeer')

def currentText():

t.insert(CURRENT,'jcodeer')

def endText():

t.insert(END,'jcodeer')

def selFirstText():

t.insert(SEL_FIRST,'jcodeer')

def selLastText():

t.insert(SEL_LAST,'jcodeer')

Button(root,text='insert jcodeer at INSERT',command=insertText).pack(fill=X)

Button(root,text='insert jcodeer at CURRENT',command=insertText).pack(fill=X)

Button(root,text='insert jcodeer at END',command=endText).pack(fill=X)

Button(root,text='insert jcodeer at SEL_FIRST',command=selFirstText).pack(fill=X)

Button(root,text='insert jcodeer at SEL_LAST',command=selLastText).pack(fill=X)

t.pack()

root.mainloop()

SEL_FIRST和SEL_LAST沒有選中區域會引發異常

4.文本屬性

from tkinter import *

root=Tk()

t=Text(root)

t.tag_config('a',foreground='red')

t.insert(1.0,'0123456789','a')

t.pack()

root.mainloop()

5.使用相同屬性

from tkinter import *

root=Tk()

t=Text(root)

t.tag_config('a',foreground='red')

t.tag_config('b',foreground='blue')

t.insert(1.0,'0123456789',('b','a'))

t.pack()

root.mainloop()

后創建的會覆蓋掉其他的設置

6.控制tag級別

from tkinter import *

root=Tk()

t=Text(root)

t.tag_config('a',foreground='red')

t.tag_config('b',foreground='blue')

t.tag_lower('b')

t.insert(1.0,'0123456789',('b','a'))

t.pack()

root.mainloop()

7.對文本塊添加tag

from tkinter import *

root=Tk()

t=Text(root)

t.tag_config('a',foreground='red')

t.tag_config('b',foreground='blue')

t.tag_lower('b')

for i in range(10):

t.insert(1.0,'0123456789\n')

t.tag_add('b','2.5','2.end')

t.pack()

root.mainloop()

8.使用自定義mark添加tag

from tkinter import *

root=Tk()

t=Text(root)

t.tag_config('a',foreground='red')

t.tag_config('b',foreground='blue')

t.tag_lower('b')

for i in range(10):

t.insert(1.0,'0123456789\n')

t.mark_set('ab','3.1')

t.mark_set('cd',END)

t.tag_add('b','ab','cd')

t.pack()

root.mainloop()

9.使用get獲取內容

from tkinter import *

root=Tk()

t=Text(root)

for i in range(10):

t.insert(1.0,'0123456789\n')

print(t.get(1.0,2.3))

t.mark_set('ab','3.1')

t.mark_set('cd',END)

t.tag_add('b','ab','cd')

print(t.get('ab','cd'))

t.pack()

root.mainloop()

10.刪除文本

t.delete(1.0,4.0)

1.0:第一行第零列

4.0:第四行第零列

11.刪除屬性

t.tag_delete(‘b’)

12.插入內置屬性

from tkinter import *

root=Tk()

t=Text(root)

for i in range(10):

t.insert(1.0,'0123456789\n')

print(t.get(1.0,2.3))

t.mark_set('ab','3.1')

t.mark_set('cd',END)

t.tag_add('b','ab','cd')

print(t.get('ab','cd'))

t.insert('b.first','first')

t.insert('b.last','last')

t.pack()

root.mainloop()

13.插入按鈕

from tkinter import *

root=Tk()

t=Text(root)

for i in range(10):

t.insert(1.0,'0123456789\n')

def printText():

print('button in text')

bt=Button(t,text='button',command=printText)

t.window_create(2.0,window=bt)

t.pack()

root.mainloop()

14.綁定事件

from tkinter import *

root=Tk()

t=Text(root)

for i in range(10):

t.insert(1.0,'0123456789\n')

t.tag_config('a',foreground='blue',underline=1)

def enterTag(event):

print('Enter event')

t.tag_bind('a','',enterTag)

t.insert(2.0,'Enter event\n','a')

t.pack()

root.mainloop()

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/277560.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/277560.shtml
英文地址,請注明出處:http://en.pswp.cn/news/277560.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

問題 1: 區間交集

問題 1: 區間交集 題目描述 輸入 5 個正整數 a1、b1、a2、b2 和 c,如果 c 在區間[a1, b1]內 并且 c 也在區間[a2, b2]內,輸出”in”,否則輸出”out”。 注意:方括號表示的是閉區間,[a, b]是包括 a 和 b 的。 輸入 一行…

python倒三角形粉色填充筆的形狀海龜_Python001-Turtle(海龜繪圖)詳解

一、簡介Turtle庫是Python語言中的一個繪制圖像的函數庫。詳細文檔: https://docs.python.org/zh-cn/3/library/turtle.html二、使用1.畫布設置(canvas)(1)設置畫布大小turtle.screensize(canvwidthNone, canvheightNone, bgNone)參數分別為畫布的寬(單位像素), 高,…

Python 提取數據庫(Postgresql)并郵件發送

剛入門python,發現確實是一個不錯的語言。業務部門要求將將某一個數據庫中的表,定期發送到相關部門人員郵箱。其實整個業務需求很簡單,實現起來也不難。但是由于剛入門python,所以還是借鑒了不上網上的內容,也得到了許…

4.Python的不堪一擊到初學乍練(列表,元組)

Python(列表,元組) 一.列表 列表初識 列表是python的基礎數據類型之一,其他編程語言也有類似的數據類型. 比如JS中的數組, java中的數組等等,它是以[ ]括起來, 每個元素用","隔開并且可以存放各種數據類型.列表相比于字符串,不僅可以存放不同的數據類型,并且可以存放…

【前端工程師手冊】說清楚JavaScript中的相等性判斷

有哪些判斷相等性的方法 JavaScript現在提供了三種方法來判斷相等性: ,三個等號即嚴格相等,兩個等號即寬松相等Object.is(),ES6中用來判斷相等的方法判斷相等性的細節 (嚴格相等) 被比較的兩個數不會進行類…

python多任務編程_python線程的多任務編程

多任務多任務介紹對于人來說,一邊聽歌,一邊跳舞就是多任務。對于電腦,簡單的說,同一時間執行多個程序處理數據叫做多任務多任務理解單核CPU單核cpu在處理多任務的時候是根據時間片輪轉的方式進行的,比如執行QQ1us&…

列舉python的5個數據類型_python公開課|新公布的5個python核心數據類型,這些細節你難道還不不知道嗎...

【摘要】在這個科學技術高速發展的時代,越來越多的人都開始選擇學習編程軟件,那么首先被大家選擇的編程軟件就是python,也用在各行各業之中,并被大家所熟知,所以也有越來越多的python學習者關注python就業方向問題&…

selenium3 + python - page_source頁面源碼

前言: 有時候通過元素的屬性的查找頁面上的某個元素,可能不太好找,這時候可以從源碼中爬出想要的信息。selenium的page_source方法可以獲取到頁面源碼。 本次以博客園為例,先爬取頁面源碼,通過re正則表達式爬取出url&a…

簡單分析Guava中RateLimiter中的令牌桶算法的實現

為什么80%的碼農都做不了架構師?>>> 令牌桶算法是網絡流量整形(Traffic Shaping)和速率限制(Rate Limiting)中最常使用的一種算法。典型情況下,令牌桶算法用來控制發送到網絡上的數據的數目&am…

gcc oracle mysql_Linux下C語言訪問Oracle數據庫Demo

前提條件1. Linux環境已經存在,安裝好了Oracle本demo 運行環境本地環境 RedHat LINUX AS 4 ,ORACLE 10G本地數據庫sid orcl,ip:127.0.0.1,用戶名:kingbi,密碼:kingbi,表dsd_test. 顯示表dsd_test 的所有記錄.步驟:(1) 創建表 …

煉數成金數據分析課程---16、機器學習中的分類算法(交叉內容,后面要重點看)...

煉數成金數據分析課程---16、機器學習中的分類算法(交叉內容,后面要重點看) 一、總結 一句話總結: 大綱實例快速學習法 主要講解常用分類算法(如Knn、決策樹、貝葉斯分類器等)的原理及python代碼實現 1、什么是分類? 分…

NFS配置詳解

1、NFS服務介紹1.1 什么是NFS?NFS是Network File System的縮寫。中文意思是網絡文件系統。它的主要功能是通過網絡(一般是局域網)讓不同的主機系統之間可以共享文件或者目錄。NFS客戶端(一般為應用服務器,例如web&…

idea用法

更新gradle的依賴后,刷新項目引入jar包的方法: view--Tool Buttons 在右側 Gradle 點刷新 轉載于:https://www.cnblogs.com/z360519549/p/10994897.html

linux備份mysql需要暫停服務嗎_【MySQL運維】線上MySQL數據庫停服遷移流程

一、數據備份與恢復階段,選在凌晨1點進行操作,暫停服務進行備份(允許停服2個小時)1、首先停止Nginx服務,并且修改數據庫用戶密碼,防止還有新的連接進來2、殺掉某個用戶所有進程for i in mysql -udba -pPASSWORD -ssse "show …

免費下載!5本阿里技術好書,帶你看更大的世界

共享、開源是互聯網技術發展的重要精神。在過去,25000多萬名阿里工程師,撰寫了一系列精品技術叢書,從算法、研發到職業人生隨筆,應有盡有。目前該系列叢書已全部開放下載,供技術人免費閱讀。 今天小編整理了其中的五本…

python3安裝mysqlclient_Python3 安裝mysqlclient錯誤處理(MAC版)

在使用django的時候需要安裝mysqlclient庫,很多時候會出現以下報錯:running installrunning bdist_eggrunning egg_infowriting mysqlclient.egg-info/PKG-INFOwriting dependency_links to mysqlclient.egg-info/dependency_links.txtwriting top-level names to mysqlclient.…

React綁定事件處理函數this的幾種方法

在以類繼承的方式定義的組件中,為了能方便地調用當前組件的其他成員方法或屬性(如:this.state),通常需要將事件處理函數運行時的 this 指向當前組件實例。 綁定事件處理函數this的幾種方法: 第一種方法&…

烏班圖系統16.04安裝

本例jiyu基于Ubuntu16.04 64位版本為例進行安裝,安裝的方式有多種,本文使用光盤進行安裝安裝前應準備好,將Ubuntu的鏡像文件刻成光盤,然后將光盤放入光驅,并設置服務器從光盤啟動,開機到如下界面:按Enter鍵到下一步,如…

python做游戲用什么軟件_用Python自制谷歌小游戲

谷歌流量器中有個很有名的彩蛋:當你網絡出現問題時,就會出現一個“小恐龍游戲”。(如果想要直接進行游戲,可以在地址欄輸入:chrome://dino)今天我們就來給大家演示下,用Python來自己做一個仿制的“小恐龍游戲”&#x…

使用maven構建項目候,jar包錯誤的解決辦法

1、刪除架包,重新下載,右鍵項目點擊"run as"中的“maven clean”,然后再maven中找到Update Project 2、可以在代碼中,把鼠標放到報錯的架包上 點擊劃紅線部分,進行安裝 轉載于:https://www.cnblogs.com/qingqian/p/1099…