Tkinter教程之Text(1)篇

【tkinter组件专栏】Text:功能强大的文本框 tkinter组件专栏之Text,功能强大的文本框! 阅读详情
'''Tkinter教程之Text篇(1)'''
'''1.创建第一个Text'''
from Tkinter import *
root 
= Tk()
t 
= Text(root)
t.pack()
root.mainloop()
#root中含有一Text控件,可以在这个控件内输入文本,可以使用Ctrl+C/V向Text内添加剪切板上的内容(文本),不接受Ctrl+Z执行操作
'''2.向Text中添加文本'''
#insert方法添加文本内容
from Tkinter import *
root 
= Tk()
t 
= Text(root)
#向第一行,第一列添加文本0123456789
t.insert(1.0,'0123456789')
#向第一行第一列添加文本ABCDEFGHIJ
t.insert(1.0,'ABCDEFGHIJ')
t.pack()
root.mainloop()
#insert的第一个参数为索引;第二个为添加的内容
'''3.使用line.col索引添加内容'''
#使用indexes来添加Text的内容
#
 -*- coding: cp936 -*-
from Tkinter import *
root 
= Tk()
t 
= Text(root)
# 向第一行,第一列添加文本0123456789
t.insert(1.0,'0123456789')
t.insert(
'2.end',' ')
# 向第一行第一列添加文本ABCDEFGHIJ
t.insert(2.5,'ABCDEFGHIJ')
t.pack()
root.mainloop()
# 可以看到使用indexes时,如果其值超过了Text的buffer值,程序不会抛出异常,它会使用向给定值靠近。
'''mark是用来表示在Text中位置的一类符号'''
'''4.使用内置的mark控制添加位置'''
#演示了内置的mark:INSERT/CURRENT/END/SEL_FIRST/SEL_LAST的用法
#
 -*- coding: cp936 -*-
from Tkinter import *
root 
= Tk()
t 
= Text(root)
#向Text中添加10行文本
for i in range(1,10):
    t.insert(
1.0,'0123456789 ')
#定义各个Button的回调函数,这些函数使用了内置的mark:INSERT/CURRENT/END/SEL_FIRST/SEL_LAST
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')
#INSERT    
Button(root,
       text 
= 'insert jcodeer at INSERT',
       command 
= insertText
       ).pack(fill 
= X)
#CURRENT
Button(root,
       text 
= 'insert jcodeer at CURRENT',
       command 
= insertText
       ).pack(fill 
= X)
#END
Button(root,
       text 
= 'insert jcodeer at END',
       command 
= endText
       ).pack(fill 
= X)
#SEL_FIRST
Button(root,
       text 
= 'insert jcodeer at SEL_FIRST',
       command 
= selFirstText
       ).pack(fill 
= X)
#SEL_LAST
Button(root,
       text 
= 'insert jcodeer at SEL_LAST',
       command 
= selLastText
       ).pack(fill 
= X)

t.pack()
root.mainloop()
#几个内置的mark:
#
INSERT:光标的插入点
#
CURRENT:鼠标的当前位置所对应的字符位置
#
END:这个Text buffer的最后一个字符
#
SEL_FIRST:选中文本域的第一个字符,如果没有选中区域则会引发异常
#
SEL_LAST:选中文本域的最后一个字符,如果没有选中区域则会引发 异常

'''5.使用表达式来增强mark'''
#表达式(expression)可以个性任何的Indexes,如下:
'''
+ count chars :前移count字符
- count chars :后移count字符
+ count lines :前移count行
- count lines :后移count行
linestart:移动到行的开始
linesend:移动到行的结束
wordstart:移动到字的开始
wordend:移动到字的结束
'''
# 演示修饰符表达式的使用方法,如何与当前可用的indexes一起使用
#
 -*- coding: cp936 -*-
from Tkinter import *
root 
= Tk()
t 
= Text()
# 向第一行,第一列添加文本0123456789
for i in range(1,10):
    t.insert(
1.0,'0123456789 ')
a 
= 'test_mark'
def forwardChars():
    
# 直接连接字符串
    # t.mark_set(a,CURRENT + '+ 5 chars')
    t.mark_set(a,CURRENT + '+5c')
def backwardChars():
    
# t.mark_set(a,CURRENT + '- 5 chars')
    t.mark_set(a,CURRENT + '-5c')
def forwardLines():
    
# t.mark_set(a,CURRENT + '+ 5 lines)
    t.mark_set(a,CURRENT + '+5l')
def backwardLines():
    
# t.mark_set(a,CURRENT + '- 5 lines)
    t.mark_set(a,CURRENT + '-5l')
def lineStart():
    
# 注意linestart前面的那个空格不可省略
    t.mark_set(a,CURRENT + ' linestart')
def lineEnd():
    
# 注意lineend前面的那个空格不可省略
    t.mark_set(a,CURRENT +  ' lineend')
def wordStart():
    
# 移动到当前字的开始。
    t.mark_set(a,CURRENT + ' wordstart')
def wordend():
    
# 移动到当前字的结束
    t.mark_set(a,CURRENT + ' wordend')
# mark:test_mark默认值为CURRENT
t.mark_set(a,CURRENT)    
Button(root,text 
= 'forward 5 chars',command = forwardChars).pack(fill = X)
Button(root,text 
= 'backward 5 chars',command = backwardChars).pack(fill = X)
Button(root,text 
= 'forward 5 lines',command = forwardLines).pack(fill = X)
Button(root,text 
= 'backward 5 lines',command = backwardLines).pack(fill = X)
Button(root,text 
= 'line start',command = lineStart).pack(fill = X)
Button(root,text 
= 'line end',command = lineEnd).pack(fill = X)
Button(root,text 
= 'word start',command = lineEnd).pack(fill = X)
Button(root,text 
= 'word end',command = lineEnd).pack(fill = X)
# 测试三个位置的不同,CURRENT可以得知是当前光标的位置;mark就表示mark的位置了,INSERT好像一植都在1.0处没有改变。
def insertText():
    t.insert(INSERT,
'insert')
def currentText():
    t.insert(CURRENT,
'current')
def markText():
    t.insert(a,
'mark')
Button(root,text 
= 'insert jcodeer.cublog.cn',command = insertText).pack(fill = X)
Button(root,text 
= 'current jcodeer.cublog.cn',command = currentText).pack(fill = X)
Button(root,text 
= 'mark jcodeer.cublog.cn',command = markText).pack(fill = X)
t.pack()
root.mainloop()

#author:     jcodeer
#
blog:    jcodeer.cublog.cn
#
email:    jcodeer@126.com
【Python入门级教程】Python GUI界面教学(03)——Text控件 文章目录1.Text。1.Text的简介。2.怎么创建Text?3.Text的选项。 这次时Text、Entry控件的教程。 1.Text。 1.Text的简介。 Text一般用于展示文本、输入文本。在编写代码时,需要将其他控件与文本一起展示时可以使用Text。 2.怎么创建Text? 只需要像这样: class tk:#引入 from tkinter import Tk,Text root=tk.Tk()#窗口 #创建Text text=tk.Text(root) text.pack(fill='bot 阅读详情

相关推荐

Tkinter教程之Text篇(3)

Tkinter教程之Text篇(3)14.自定义tag的两个内置属性#tag.first:tag之前插入文本,此文本不包含在这个tag中#tag.last:tag之后插入文本,此文本包含在这个tag中# -*- coding: cp936 -*-# 使用tag的内置属性来插入文本from Tkinter import *root = Tk()t = Text(roo

灵蛇舞动 6182

tkinter-Text详解

本文介绍tkinter的Text控件。Text控件是一种非常灵活和强大的工具。Text控件通常用作编辑框,可以接收文字的输入。但是它还可以用做样式化代码编辑器、web浏览器等。 文章目录Text的属性&方法width&heightinsert()delete()get()yscrollcommandxscrollcommandwrapconfig()count() Text的属性&方法 单纯的描述每个属性&方法的作用其实"感觉不太明显",看完后还是不知道怎么用,我还是觉得有个

渔道的博客 2万+

Tkinter教程之Text(2)篇

Tkinter教程之Text(2)篇6.使用tag来指定文本的属性#创建一个指定背景颜色的TAG# -*- coding: cp936 -*-from Tkinter import *root = Tk()t = Text(root)# 创建一个TAG,其前景色为红色t.tag_config(a,foreground = red)# 使用TAG a来指定文本

灵蛇舞动 1万+

Tkinter 组件详解(十一):Text

Text(文本)组件用于显示和处理多行文本。在 Tkinter 的所有组件中,Text 组件显得异常强大和灵活,适用于多种任务。虽然该组件的主要目的是显示多行文本,但它常常也被用于作为简单的文本编辑器和网页浏览器使用。 何时使用 Text 组件? Text 组件用于显示文本文档,包含纯文本或格式化文本(使用不同字体,嵌入图片,显示链接,甚至是带 CSS 格式的 HTML 等)。因此,它常常也被...

来自江南的你的博客 11万+

Tkinter教程之Entry篇

#Tkinter教程之Entry篇#Entry用来输入单行文本1.第一个Entry程序from Tkinter import *root = Tk()Entry(root,text = input your text here).pack()root.mainloop()#上面的代码目的是创建一个Entry对象,并在Entry上显示input your text here,

灵蛇舞动 2万+

鱼c笔记——Python 的 GUI 编程(六):Tkinter 的 Text 组件

绘制单行文本使用 Label 组件、多行选项使用 Listbox 组件、输入框使用 Entry 组件 显示和处理多行文本就需要使用我们的 Text 组件了。   Text 组件十分的强大和灵活,适用于多种任务。虽然说 Text 的主要目的是显示多行文本,但是也常常被当做简单的文本处理器、文本编辑器或者网页浏览器来使用。例如说我们的 IDLE 就是 Text 组件构成的。 目录 简单用法 ...

在到处之间找我 3万+

Tkinter教程之Text篇(1)

from Tkinter import *root = Tk()t = Text()for i in range(1,10): t.insert(1.0,'0123456789\n')a = 'test_mark'def forwardChars(): # 直接连接字符串 # t.mark_set(a,CURRENT + '+ 5 chars') t.mark_s...

demonzsmj12315的博客 166

Python GUI之tkinter窗口视窗教程大集合(看这篇就够了)

title: Python GUI之tkinter窗口视窗教程大集合(看这篇就够了) top: true cover: true toc: true mathjax: false date: 2019-08-16 15:36:09 author: 洪卫 img: /medias/banner/6.jpg coverImg: /medias/banner/4.jpg password: summa...

sunhwee的博客 2366

Python Tkinter教程之Text(1)篇

'''Tkinter教程之Text篇(1)''' '''1.创建第一个Text''' from Tkinter import * root = Tk() t = Text(root) t.pack() root.mainloop() #root中含有一Text控件,可以在这个控件内输入文本,可以使用Ctrl+C/V向Text内添加剪切板上的内容(文本),不接受Ctrl+Z执行操作

it技术学习 9995

python中tkinter使用text组件添加多行文本并自动换行、添加多行文字、添加按钮、添加图片

python中tkinter使用text组件添加多行文本并自动换行、添加多行文字、添加按钮、添加图片

statistics+insight+vista+power 1088

Ansys Maxwell磁场仿真入门:无线传能线圈自感与互感计算全流程

本文详细介绍了使用Ansys Maxwell进行无线充电线圈磁场仿真的全流程,包括模型建立、求解器设置、电感参数提取及优化策略。通过实战案例,帮助工程师掌握线圈自感与互感计算技巧,提升无线充电系统设计效率与精度。重点解析了Maxwell在磁场仿真中的关键应用,适用于电磁场仿真初学者和进阶用户。

weixin_29047545的博客 436

Python Tkinter教程之Text(2)篇

'''Tkinter教程之Text(2)篇''' '''6.使用tag来指定文本的属性''' #创建一个指定背景颜色的TAG # -*- coding: cp936 -*- from Tkinter import * root = Tk() t = Text(root) # 创建一个TAG,其前景色为红色 t.tag_config('a',foreground = 'red')

it技术学习 9673

企业级Windows 10镜像封装实战:从规划到部署的完整指南

系统部署与镜像封装是企业IT运维中的核心基础技术,其原理在于通过创建预配置的系统模板,实现大规模计算机环境的快速、标准化部署。这项技术的核心价值在于将重复性手动操作转化为自动化流程,显著提升运维效率,保障环境一致性,并强化安全基线管理。在实际应用场景中,它尤其适用于新设备批量初始化、系统恢复和标准化环境构建。本文聚焦于Windows 10镜像的封装实践,深入探讨了使用Sysprep进行系统通用化处理以及通过DISM工具捕获WIM格式镜像的具体方法,为企业IT人员提供从零构建标准化系统镜像的完整路径。

weixin_33843947的博客 356

【tkinter模块03】Text控件(加滚动条)

""" 文本控件:用于显示多行文本 """ import tkinter win = tkinter.Tk() win.title('text控件') win.geometry('400x400') text = tkinter.Text(win,width=30,height=4) text.pack() str1 = 'ahh ta yu duan jian jie shi ke x...

菜鸟成长日记 1万+

SAP VC实战:用CU01和CS02搞定BOM里的‘智能’对象相关性(附语法避坑指南)

在工业制造领域,产品配置的复杂性往往超出想象。想象一下,当客户需要定制一台工业设备时,可能有数百种配置选项相互影响——从基础材质到动力系统,从控制模块到安全装置。如何在SAP系统中优雅地管理这种复杂性?对象相关性(Object Dependencies)就是解决这一挑战的利器。

weixin_42524824的博客 467

为什么大语言模型推理要分成 Prefill 和 Decode?深入理解这两个阶段的真正意义

Prefill 阶段是语言模型推理中的第一个步骤,它负责处理你输入的所有上下文内容(prompt),为后续生成打下基础。“请解释一下 Transformer 的原理。这句话会被 tokenizer 编码为一串 token,比如["请", "解释", "一下", "Trans", "##former", "的", "原理", "。"]。然后这些 token 会进入 Transformer 模型进行前向传播。重点来了 👇。

Harry的博客 1万+

tkinter-text详解(1)

text组件 Text 组件用于显示文本文档,包含纯文本或格式化文本(使用不同字体,嵌入图片,显示链接,甚至是带 CSS 格式的 HTML 等)。因此,它常常也被用于作为简单的文本编辑器和网页浏览器使用. 给其插入内容,你可以使用 insert() 方法以及 INSERT 或 END 索引号. 在 Text 组件中插入对象,可以使用 window_create() 和 image_create() 方法 删除 Text 组件中的内容可以用 delete() 方法,下边代码用于删除所有内容(也包含 w

peanutfish的专栏 4932

学习海康VisionMaster之表面缺陷滤波

本文介绍了VisionMaster中表面缺陷滤波技术的应用。该技术通过数学变换抑制背景干扰、增强缺陷特征,适用于电池铝壳、垫圈/螺丝等无纹理背景的表面缺陷检测(划痕、凹坑、异物等)。操作流程包括:图像导入、轮廓定位、位置修正、参数设置(重点讲解滤波核尺寸/数量/标准差等关键参数的调整策略)。文章通过案例演示了如何通过多方向滤波响应识别表面划伤,并指出需结合blob分析进一步优化检测结果。该技术对工业质检具有实用价值,参数设置需结合缺陷特征与背景特性灵活调整。

yuhouxiyang的专栏 2824

Python Tkinter Text控件

Text文本组件用于显示和处理多行文本。在Tkinter的所有组件中,Text组件显得异常强大和灵活,它适用于处理多任务,虽然该组件的主要目的是显示多行文本,但它常常被用于作为简单的文本编辑器和网页浏览器使用。当创建一个Text组件的时候里面是没有内容的。为了给其插入内容,可以使用insert()以及INSERT或END索引号。1.普通的Text组件import tkinter as tk ro...

zxl7725103的博客 1万+

ZEMAX学习第7天-手机镜头光学系统设计全过程案例

接下来对系统微调,依次缩小CRA和畸变,首先对CRA进行依次递减(39°、38°、37°、36°、35°),目前CRA角度40度,每次下降一度进行优化,利用MAXX加OPLT一起控制,控制小于35°。可以看出在标注的三个地方镜头曲率变化,导致PY=1的光线走向奇特,因此需要对矢高进行调整,按照标注的地方依次调整(从右到左)至传函变好,越靠近右边对其余视场影响越小。3.圆锥系数值较大,透镜形状怪异;一、第1,3镜子偏厚,第4镜子偏薄,45镜子间隔边缘偏小,第5片镜子中心厚度与边缘厚度相差较大,需要控制;

liningliwei的博客 1065

【camera-radar】基于ROS的多传感器融合感知系统实现(雷达+相机)(2)

实现功能:代码下载地址:下载地址 1)基于深度学习的目标检测;2)基于雷达的距离估计和预测;3)多传感器感知结果融合模块。 相机感知模块解析 4. Run nodes: python3 fusion_node/main.py python3 gps_node/main.py python3 radar_node/main.py python3 2d_detection_node/main.py #(additional instructions in 2d_detection_node/README.m

踟蹰横渡口,彳亍上滩舟。 9949

tkinter中text属性_Tkinter Text控件

Text 控件用于创建一个多行、格式化的文本框。用户可以改变文本框内的字体及文字颜色。1. Text控件的属性1) state此属性值可以是 normal 或 disabled。state 等于 normal,表示此文本框可以编辑内容。state 等于 disabled,表示此文本框可以不编辑内容。2) tabs此属性值为一个 tab 位置的列表。列表中的元素是 tab 位置的索引值,再加上一个调...

weixin_39900736的博客 2349

手把手入门YOLO到改进优化教程 | 【P2基础篇】数据标注+环境搭建+模型训练

本节以 YOLO自定义目标检测训练为主线,带你从零开始完成 数据标注 → 环境搭建 → 模型训练 → 结果的流程。使用labelImg制作符合YOLO格式的自定义数据集。在Windows基于 Python + Conda 创建独立虚拟环境,安装 PyTorch + CUDA + ultralytics,配置 PyCharm 运行环境。本节不仅使用自定义数据集进行演示,同时也用公开数据集训练 YOLO,查看训练日志与可视化结果(PR、P/R/F1 曲线等)等。

嵌入式阿齐Archie 2万+
上一篇: Tkinter教程之Toplevel篇
下一篇: Tkinter教程之Text(2)篇
jcodeer
博客等级 码龄22年 272粉丝 43原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值