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','<Enter>',enterTag)
t.insert(2.0,'Enter event\n','a')
t.pack()
root.mainloop()

Python3 Tkinter-Text的更多相关文章
- python tkinter Text
"""小白随笔,大佬勿喷""" '''tkinter —— text''' '''可选参数有: background(bg) 文本框背景色: ...
- Tkinter Text(文本)
Tkinter Text(文本): 文本小部件提供先进的功能,让您编辑多行文本格式,如改变其颜色和字体的方式显示. 文本小部件提供先进的功能,让您编辑多行文本格式,如改变其颜色和字体的方 ...
- python3+tkinter实现的黑白棋,代码完整 100%能运行
今天分享给大家的是采用Python3+tkinter制作而成的小项目--黑白棋 tkinter是Python内置的图形化模块,简单易用,一般的小型UI程序可以快速用它实现,具体的tkinter相关知识 ...
- Python3 tkinter基础 Text image 文本框中插入图片
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- Python3 tkinter基础 Text window 文本框中插入按钮
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- Python3 tkinter基础 Button text,fg 按钮上显示的文字 文字的颜色
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- python3 tkinter添加图片和文本
在前面一篇文章基础上,使用tkinter添加图片和文本.在开始之前,我们需要安装Pillow图片库. 一.Pillow的安装 1.方法一:需要下载exe文件,根据下面图片下载和安装 下载完 ...
- python3 tkinter模块
一.tkinter 1.tkinter--tool kit interface工具包接口,用于GUI(Graphical User Interface)用户图形界面, 2.python3.x把Tkin ...
- Python3 tkinter基础 TK title 设置窗体的标题
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- Python3 tkinter基础 Tk quit 点击按钮退出窗体
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
随机推荐
- Can't connect to X11 window server using 'localhost:10.0' as the value of the DISPLAY variable.
刚刚在一台Linux服务器上安装了jdk和Tomcat,然后部署了一个web项目,在项目中有个添加图片的功能,保存图片时报错 org.springframework.web.util.NestedSe ...
- Hibernate基础入门
Hibernate是一个开放源代码的对象关系映射框架,它将POJO与数据库表之间建立映射关系.是全自动的ORM框架,可以自动生成SQL语句并自动执行.它对JDBC进行了非常轻量级的封装,使程序员可以随 ...
- C语言的乱七八糟
Note For C Linux下C编程基础(gcc/gdb/make使用) 一.vi学习 二.初探emacs 三.gcc编译器 3.1 gcc所支持后缀名解释 后缀名 解释 后缀名 解释 .c C原 ...
- jQuery基本toggle() toggleClass() 使用
今天来学习一下jQuery的基本函数的使用,很简单. 首先写一个button做控制按钮,然后写一个div用按钮控制idv做动画,从而测试JQuery的动画函数 <head> <met ...
- vue 图片压缩 基于cli3 配置
chainWebpack: config => { const imagesRule = config.module.rule('images') imagesRule .use('image- ...
- vue vue-router 完美实现前进刷新,后退不刷新。附scrollBehavior源码解析
需求:在一个vue的项目中,我们需要从一个列表页面点击列表中的某一个详情页面,从详情页面返回不刷新列表,而从列表的上一个页面重新进入列表页面则需要刷新列表. 而浏览器的机制则是每一次的页面打开都会重新 ...
- delphi 2010以上 安装 第三方控件
delphi-“can't be installed because it is not a design time package. 一定要先装 dcl*.dpk ----------------- ...
- 大数据学习--day10(继承-权限-super-final-多态-组合)
继承-权限-super-final-多态-组合 权限修饰符 内容 public protected default(不写就是它) ...
- QP总体结构
QP是一个基于事件驱动的嵌入式系统软件框架,其总体结构如下图. AO活动对象由事件队列和层次状态机两部分组成,每个AO占有一个优先级: QF量子框架由五个数据结构及操作组成,其数据结构采用了uCOS- ...
- mysql自动提交
MySQL的autocommit(自动提交)默认是开启,其对mysql的性能有一定影响,举个例子来说,如果你插入了1000条数据,mysql会commit1000次的,如果我们把autocommit关 ...