Python---tkinter之Text()

Text()介绍:点击打开链接



e.g.1 创建一个窗口组件,插入到text中

from tkinter import *

root=Tk()

text=Text(root,width=30,height=5)
text.pack()

text.insert(INSERT,'I Love\n')#INSERT表示在光标位置插入
text.insert(END,'FishC.com!\n')#END表示在末尾处插入


def show():
    print('我被点了~')

#创建一个窗口组件,插入到text中
b1=Button(text,text='点我点我',command=show)
text.window_create(INSERT,window=b1)


mainloop()
Python---tkinter之Text()_第1张图片


e.g.2 事件绑定,链接到该网址

from tkinter import *
import webbrowser

root=Tk()

text=Text(root,width=30,height=5)
text.pack()

text.insert(INSERT,'I love FishC.com!')

text.tag_add('link','1.7','1.16')
text.tag_config('link',foreground='blue',underline=True)

#事件绑定
def show_arrow_cursor(event):
    text.config(cursor='arrow')

def show_xterm_cursor(event):
    text.config(cursor='xterm')
    
def click(event):
    webbrowser.open('http://www.fishc.com')

text.tag_bind('link','',show_arrow_cursor)
text.tag_bind('link','',show_xterm_cursor)
text.tag_bind('link','',click)

mainloop()

说明:当鼠标点击FishC.com时就会打开该链接


e.g.3检查输入的文本是否有修改

from tkinter import *
import hashlib

root=Tk()

text=Text(root,width=30,height=5)
text.pack()

text.insert(INSERT,'I love FishC.com!')
contents=text.get('1.0',END)

def getSig(contents):
    m=hashlib.md5(contents.encode())
    return m.digest()

sig=getSig(contents)

def check():
    contents=text.get('1.0',END)
    if sig!=getSig(contents):
        print('警告:内容发生变化')
    else:
        print('风平浪静~')

Button(root,text='检查',command=check).pack()

mainloop()

Python---tkinter之Text()_第2张图片说明:把F删除了




你可能感兴趣的:(Python)