Python GUI编程利器:Tkinker中的消息和文本(7)

news2024/11/26 13:45:27

小朋友们好,大朋友们好!

我是猫妹,一名爱上Python编程的小学生。

和猫妹学Python,一起趣味学编程。

今日目标

实现下面效果:

消息(Message类)

消息用于显示多行文本消息,对标签进行替代,如果是更加复杂的文本,也可以使用文本(Text类)

创建消息对象语法如下:

Message(master,text,background,width,cursor,anchor,relief,textvariable)

master表示消息的父容器

text表示消息的文本内容

width表示消息的宽度

cursor表示鼠标移动上去光标的形状,其值有arrow(默认值),circle,cross,plus

anchor表示标签中文本内容或图片位置,取值有n,s,,w,e,ne,nw,sw,se和center(默认)

relief表示消息的边框样式,其值包括flat(默认),sunken,raised,groove,ridge

textvariable表示与消息相关联的Variable类型变量,用于存放消息文本内容

参考代码:

import tkinter as tk
root = tk.Tk()root.title('消息(Message类)')root.geometry('500x400+20+20')root.resizable(width=False, height=True)tk.Message(root, text='如有帮助,敬请关注', width=300).pack()tk.Message(root, text='和猫妹学Python', width=300).pack()root.mainloop()

文本(Text类)

文本主要用于显示和处理多行文本

在所有控件中,文本的功能是最为灵活强大的,它可以插入文字、图片、设置其他控件,可以适用于多种任务。

创建文本对象语法如下:

Text(master,background,width,height,cursor,relief,padx,pady,takefocus,state,wrap,undo,xcrollcommand,ycrollcommand)

master表示文本的父容器

background表示文本的背景颜色

width表示文本的宽度

height表示文本的高度

cursor表示鼠标移动上去光标的形状,其值有arrow(默认值),circle,cross,plus

relief表示文本的边框样式,其值包括flat(默认),sunken,raised,groove,ridge

padx表示水平方向上文本和边框的间距

pady表示垂直方向上文本和边框的间距

takefocus表示是否允许键盘TAB键将焦点移动到文本中

state表示是否响应键盘事件或鼠标事件,取值为normal响应和disable不响应

wrap表示文本长度超过制定宽度后是否允许自动换行,none不自动换行,char按字符自动换行,word按单次自动换行

undo表示是否开启撤销功能,True开启,False不开启

xcrollcommand用于绑定水平方向上的滚动条

ycrollcommand用于绑定垂直方向上的滚动条

文本对象的相关方法

index()方法表示返回指定位置的line.column格式的索引

delete()方法表示删除指定范围内的文本、图片或控件

insert()方法表示将指定的文本插入文本之中

image_create()方法表示将指定的图片插入文本之中

window_create()方法表示将指定的控件插入文本之中

mark_set()方法表示设置一个标记,用于控制文本内容、图片或控件位置

mark_unset()方法表示删除一个标记

tag_config()方法表示设置一个标签,用于改变文本中内容的样式和功能

tag_add()方法表示在指定范围内设置一个标签

tag_delete()方法表示删除一个标签

tag_remove()方法表示删除指定范围内的标签

search()方法表示检索文本中的内容

使用时,注意各方法的参数。

参考代码:

import tkinter as tk
root = tk.Tk()root.title('文本(Text类)')root.geometry('550x400+20+20')root.resizable(width=False, height=True)
def clear():    text.delete("1.0", tk.END)
text = tk.Text(root, width=500, height=400)text.pack()
# 设置标记,标记名为postext.mark_set('text_pos', '1.0')
# 设计标签,标签名bg_yellowtext.tag_config('bg_yellow', background='pink')
# 插入文本内容text.insert(tk.INSERT, '如有帮助,敬请关注')text.insert('text_pos', '和猫妹学Python')
# 插入图片photo = tk.PhotoImage(file="pic/maomei.png")text.image_create(tk.END, image=photo)
# 插入控件btn = tk.Button(text, text="清除文本", command=clear, cursor='arrow')text.window_create('1.end', window=btn)
root.mainloop()

怎么样?

你学会了吗?

好了,我们今天就学到这里吧!

如果遇到什么问题,咱们多多交流,共同解决。

我是猫妹,咱们下次见!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/722483.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【数学建模】国赛真题分析 2012 A题 葡萄酒的评价

2012 A题 葡萄酒的评价 优秀论文地址: 链接:https://pan.baidu.com/s/19WGpybgM6RncxTYhx61JRA?pwdvl22 提取码:vl22 –来自百度网盘超级会员V6的分享 确定葡萄酒质量时一般是通过聘请一批有资质的评酒员进行品评。每个评酒员在对葡萄酒进…

GWIN入门-完整一个程序

GWIN入门-完整一个程序 新建工程 右击工程名,添加.v文件 编写功能文件 /* timescale是Verilog HDL 中的一种时间尺度预编译指令,它用来定义模块的仿真时的时间单位和时间精度。 */`timescale 1ns/1ps module LED(input wire clk

第三步:STM32F4时钟介绍

1.0 时钟系统框图 1.1 时钟系统知识 1. STM32 有5个时钟源:HSI、HSE、LSI、LSE、PLL。 ①、HSI是高速内部时钟,RC振荡器,频率为16MHz,精度不高。可以直接作为系统 时钟或者用作PLL时钟输入。    ②、HSE是高速外部时钟,可接石英…

机器学习PCA + LogisticRegression 训练和预测 输出混淆矩阵

from sklearn.decomposition import PCA# --------------------------------------------- # 最佳主成分数量 pca = PCA(n_components=None) pca.fit_transform(x_train) var_values = pca.explained_variance_ratio_def select_best_components(var_, goal_var):best_componen…

flutter3.7版本下使用flutter boost解决使用platview崩溃或异常问题

背景 工程使用了混合开发,使用flutter boost插件,flutter 的activity1 frament1 跳转activity2 frament2,frament1 包含platformView,按照上面老哥解决崩溃问题的基础上,出现activity2 frament2返回activity1 framen…

百度--搜索引擎是怎么实现的--如何制作一个搜索浏览器

1.搜索引擎是怎么实现的? 搜索引擎是通过以下步骤实现的: 网页抓取(Crawling):搜索引擎会使用网络爬虫(Web Crawler)自动地从互联网上抓取网页内容。爬虫按照一定的规则遍历网页并提取网页内容…

数组之前缀和

1.前缀和 前缀和的概念:前缀和是指数组中从开始位置到当前位置的所有位置的元素之和,它可以通过累加数组元素来计算,一般来说,我们可以使用前缀和数组在常数时间复杂度内计算任意区间的和. 注意:特别是需要频繁的计算区间和的情况,可以通过先预先计算前缀和数组,可以将时间复…

经典神经网络(7)DenseNet及其在Fashion-MNIST数据集上的应用

经典神经网络(7)DenseNet及其在Fashion-MNIST数据集上的应用 1 DenseNet的简述 DenseNet不是通过更深或者更宽的结构,而是通过特征重用来提升网络的学习能力。 ResNet 的思想是:创建从“靠近输入的层” 到 “靠近输出的层” 的直连。而DenseNet 做得更…

idea取消右侧边缘提示信息;IDEA使用心得:工作区右边框提示信息

idea的提示是很人性的,合理使用一定程度上也会提升个人的编码水平 最终效果:能看到weak warning个数,但侧边栏不会显示直接清爽 但是idea在检查代码时有一种警告叫做weak warning 什么是weak warning 图中这种只是其中一种,这种…

导出本地文件(模板)

/*** 导出模板*/GetMapping("export/template")ApiOperationSupport(order 16)ApiOperation(value "导出模板")public void exportTemplate(HttpServletResponse response) {List<JointExcel> list new ArrayList<>();ClassPathResource cl…

Fortran 中的 goto 语句

注意项 避免滥用&#xff1a;Fortran 90引入了结构化编程的概念&#xff0c;切记不要滥用goto语句明确标签&#xff1a;在使用goto语句时&#xff0c;标签要明确避免跳转过多&#xff1a;过多的跳转会增加代码的复杂性和可读性避免跳转到循环内部&#xff1a;在循环内部使用go…

力扣 93. 复原 IP 地址

题目来源&#xff1a;https://leetcode.cn/problems/restore-ip-addresses/description/ C题解&#xff1a;递归回溯法。 递归参数&#xff1a;因为不能重复分割&#xff0c;需要ind记录下一层递归分割的起始位置&#xff1b;还需要一个变量num&#xff0c;记录ip段的数量。递…

【设计模式】第二十章:解释器模式详解及应用案例

系列文章 【设计模式】七大设计原则 【设计模式】第一章&#xff1a;单例模式 【设计模式】第二章&#xff1a;工厂模式 【设计模式】第三章&#xff1a;建造者模式 【设计模式】第四章&#xff1a;原型模式 【设计模式】第五章&#xff1a;适配器模式 【设计模式】第六章&…

中国移动九天毕昇部署fastchat Ubuntu18.04+torch1.13.1+cuda11.6+python3.9

8核CPU,RAM32G 时间&#xff1a;2023年7月 项目地址:GitHub - lm-sys/FastChat: An open platform for training, serving, and evaluating large language models. Release repo for Vicuna and FastChat-T5. 体验地址:https://chat.lmsys.org/ 时间20230703&#xff0c;fas…

【Web3】Web3连接到以太坊网络(测试网、主网)

目录 什么是Web3 Web3项目连接以太坊网络 1.下载Web3 2.实例化Web3对象 3.infura 获取连接以太坊网络节点 4.添加网络节点 什么是Web3 web3.js开发文档&#xff1a;web3.js - Ethereum JavaScript API — web3.js 1.0.0 documentation web3.js 中文文档 : web3.js - 以…

【观察】技术创新+以行践言双管齐下,戴尔科技加速边缘计算落地

众所周知&#xff0c;随着混合多云的快速发展&#xff0c;来自百行千业的用户都在通过混合多云的策略推进加速企业的数字化转型&#xff0c;其中边缘计算由于能够在靠近数据生成的地点和位置就近提供计算、网络、智能等关键能力&#xff0c;其不仅正成为构建“云边端”一体化的…

实验:验证TCP套接字传输的数据不存在数据边界

来源&#xff1a;《TCP/IP网络编程》 学习ing 自己动手&#xff0c;把坑踩一遍&#xff0c;也可以学习到很多。 Linux环境下: 客户端&#xff1a; #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <…

23西安电子科技大学人工智能学院821考研录取情况

23西安电子科技大学人工智能学院821考研录取情况 01、人工智能学院各个方向 02、23人工智能学院一志愿考研录取情况总览、均分 PS&#xff1a;智能院23年院线相对于22年院线下降很多分&#xff0c;对于广大考生来说是一个好事 PS&#xff1a;1、总成绩均分在330-345之间&#…

封装一个类似微信通讯录带有字母检索功能的vue组件

这里我们直接使用scrollIntoView方法 该方法将调用它的元素滚动到浏览器窗口的可见区域 语法 element.scrollIntoView&#xff08;&#xff09;; // 等同于element.scrollIntoView(true) element.scrollIntoView&#xff08;alignToTop&#xff09;; //布尔参数 element.scro…

新颖的文档、视频交互方式:以《GPT API Unofficial Docs》和《渐构》为例

一、背景 无意中看到一份 《GPT API 非官方文档》&#xff1a;https://gpt.pomb.us/ 被网站的交互方式所吸引&#xff0c;颇为新颖&#xff0c;值得借鉴。 左侧是对应的 API 代码调用示例&#xff0c;右侧是文档的每个部分&#xff0c;滑动到对应部分&#xff0c;左侧相关的代…