【Python64-tkinter_label组件】
一、label组件用于在屏幕上显示文本活图像,Label组件仅能显示单一字体的文本,单文本可以跨越多行。另外还可以为其中的个别字符加上下划线
二、如何使用label组件
使用label组件,你可以指定想要显示的内容
三、简单举例:生成一个窗口
import tkinter as tk app = tk.Tk() #生成顶层窗口
app.title("FishC Demo") #设置标题 #设置label组件,Label是标签的意思,是一个组件,组件放到app下,显示的文字为“我的第二个窗口程序!”
theLabel = tk.Label(app,text="我的第二个窗口程序!")
theLabel.pack() #用于自动条件组建的尺寸 app.mainloop() #窗口的主视界循环
四、封装类形成的tkinter
import tkinter as tkds class APP:
#4、通过构造函数__init__设置主函数root
def __init__(self,master):
frame = tk.Frame(master) #引入Frame框架,放入master即传进来的顶层窗口root
frame.pack(side=tk.LEFT,padx=50,pady=50) #自动调整窗口位置,side按钮靠在窗口的那个位置,padx指x轴的长度,pady指y轴的长度 #设置打招呼的按钮
self.hi_there = tk.Button(frame,text = "打招呼",bg="black",fg="red",command=self.say_hi)
self.hi_there.pack() #5、点击打招呼按钮后生成一段打招呼的文字
def say_hi(self):
print("互联网的广大朋友们大家好,我是尘封!") root = tk.Tk() #1、创建label窗口即顶层窗口
app = APP(root) #2、实例化并且把顶层窗口的root作为一个参数 root.mainloop() #3、进入主视界循环
四、label用于在屏幕上显示文本和图像,但是仅能显示单一字体的文本,但文本可以显示多行,另外,还可以为其中的个别字符加上下划线
1、label用于显示文本和图像,并且使用双缓冲,如果希望显示的数据用户可以进行操作,使用Canvas组件或许更为合适
2、基本用法:
import tkinter as tk master = tk.Tk() #生成顶层窗口
master.title("设置标题") w = tk.Label(master,text="hi man")
w.pack() tk.mainloop()
结果:

如果没有指定Label的大小,那么Label的窗口自适应文本的大小
如果需要改变窗口的大小以及文本的颜色,可以通过:height和width来改变Label的大小,通过foreground(或 fg)和 background(或 bg)来设置Label的前景色和背景色,也可以选择Label中的文本用那种字体显示

3、label多行显示,可以直接使用换行符或者使用wraplength选项来实现,可以使用anchor和justify选项来使的文本如你所希望的显示出来
import tkinter as tk
from tkinter import * master = tk.Tk() #生成顶层窗口
master.title("设置标题") longtext = """
独立寒秋,湘江北去,橘子洲头。
看万山红遍,层林尽染;漫江碧透,百舸争流。
鹰击长空,鱼翔浅底,万类霜天竞自由。
怅寥廓,问苍茫大地,谁主沉浮?
携来百侣曾游。忆往昔峥嵘岁月稠。
恰同学少年,风华正茂;书生意气,挥斥方遒。
指点江山,激扬文字,粪土当年万户侯。
曾记否,到中流击水,浪遏飞舟?
""" w = tk.Label(master,text=longtext,font="翩翩体-简, 14",fg="green",height="",width="")
#w = tk.Label(master,text=longtext,anchor=W, justify=LEFT) 字体靠左显示
w.pack() tk.mainloop()
执行结果:

4、Label显示变量的文本,可以自己填写内容
import tkinter as tk
from tkinter import * master = tk.Tk() #生成顶层窗口
master.title("设置标题")
v = StringVar()
#w = tk.Label(master,textvariable=v,font="翩翩体-简, 14",fg="green",height="20",width="40")
#w = tk.Label(master,text=longtext,anchor=W, justify=LEFT)
w = Label(master, textvariable=v,fg="green",height="",width="").pack()
v.set("~新的文本~") tk.mainloop()
5、Label显示图片
from tkinter import * root = Tk() textLabel = Label(root,text="您所下载的影片含有未成年人限制内容,请满18周岁后再点击!").pack(side=LEFT) photo = PhotoImage(file="18.gif")#PhotoImage是图片的字符
imgLabel = Label(root,image=photo).pack(side=RIGHT)#image=photo mainloop()
执行结果:

文本内容太长,换行:通过\n转移符来换行,并且使文本左对齐(通过:justify=LEFT实现)
from tkinter import * root = Tk()
root.title("老王下黄片") textLabel = Label(root,text="您所下载的影片含有未成年人限制内容,\n请满18周岁后再点击!",
justify = LEFT,
padx=10).pack(side=LEFT) photo = PhotoImage(file="18.gif")
imgLabel = Label(root,image=photo).pack(side=RIGHT) mainloop()
执行结果:

6、图片显示背景,文字显示在图片上面,关键字:compound
from tkinter import * root = Tk() photo= PhotoImage(file="bg.gif")
theLabel = Label(root,
text = "跟着尘封学Python",
justify = LEFT,
image = photo,
compound=CENTER, #混合模式,采用compound关键字
font=("华康少女字体",18),
fg="white"
).pack() mainloop()
执行结果:

https://fishc.com.cn/thread-59087-1-3.html
【Python64-tkinter_label组件】的更多相关文章
- ExtJS 4.2 评分组件
上一文章是扩展ExtJS自带的Date组件.在这里将创建一个评分组件. 目录 1. 介绍 2. 示例 3. 资源下载 1. 介绍 代码参考的是 Sencha Touch 2上的一个RatingStar ...
- react组件的生命周期
写在前面: 阅读了多遍文章之后,自己总结了一个.一遍加强记忆,和日后回顾. 一.实例化(初始化) var Button = React.createClass({ getInitialState: f ...
- react-router 组件式配置与对象式配置小区别
1. react-router 对象式配置 和 组件式配置 组件式配置(Redirect) ----对应---- 对象式配置(onEnter钩子) IndexRedirect -----对应-- ...
- Angular2入门系列教程3-多个组件,主从关系
上一篇 Angular2项目初体验-编写自己的第一个组件 好了,前面简单介绍了Angular2的基本开发,并且写了一个非常简单的组件,这篇文章我们将要学会编写多个组件并且有主从关系 现在,假设我们要做 ...
- Angular2入门系列教程2-项目初体验-编写自己的第一个组件
上一篇 使用Angular-cli搭建Angular2开发环境 Angular2采用组件的编写模式,或者说,Angular2必须使用组件编写,没有组件,你甚至不能将Angular2项目启动起来 紧接着 ...
- .NET Core 首例 Office 开源跨平台组件(NPOI Core)
前言 最近项目中,需要使用到 Excel 导出,找了一圈发现没有适用于 .NET Core的,不依赖Office和操作系统限制的 Office 组件,于是萌生了把 NPOI 适配并移植到 .NET C ...
- .NetCore中的日志(1)日志组件解析
.NetCore中的日志(1)日志组件解析 0x00 问题的产生 日志记录功能在开发中很常用,可以记录程序运行的细节,也可以记录用户的行为.在之前开发时我一般都是用自己写的小工具来记录日志,输出目标包 ...
- BootStrap_02之全局样式及组件
1.BootStrap指定的四种屏幕尺寸: ①超大PC屏幕--lg(large):w>=1200px: ②中等PC屏幕--md(medium):1200px>w>=992px: ③P ...
- ExtJS 4.2 组件介绍
目录 1. 介绍 1.1 说明 1.2 组件分类 1.3 组件名称 1.4 组件结构 2. 组件的创建方式 2.1 Ext.create()创建 2.2 xtype创建 1. 介绍 1.1 说明 Ex ...
- ExtJS 4.2 组件的查找方式
组件创建了,就有方法找到这些组件.在DOM.Jquery都有各自的方法查找元素/组件,ExtJS也有自己独特的方式查找组件.元素.本次从全局查找.容器内查找.form表单查找.通用组件等4个方面介绍组 ...
随机推荐
- 11.9luffycity(4)
2018-11-9 17:57:09 明天开始自己独立写luffy部分表的接口, 越努力,越幸运!永远不要高估自己! 明天后天先不想下看视频,把接口做完,然后整理一下笔记,温故而习之,可以为师啊! 知 ...
- vue2 在mounted函数无法获取prop中的变量的解决方法
props: { example: { type: Object, default() { }, }, }, watch: { example: function(newVal,oldVal){ // ...
- ruby 基础知识 - Class 与 Module
原文 1. 因為 Ruby 並沒有「屬性」(property/attribute)這樣的設計,要取用實體變數,需要另外定義的方法才行: class Cat def initialize(name, g ...
- 动态HTMl处理
后续爬虫代码的建议 尽量减少请求次数 1. 能抓列表页就不抓详情页 2. 保存获取的html页面,供差错和重复请求使用 关注网站的所有类型的页面 1. wap页面,触屏版页面 2. H5页面 3. A ...
- Ubuntu12.04下解决sudo apt-get update警告Duplicate sources.list entry
sudo apt-get update,会提示如下警告: W: Duplicate sources.list entry http://archive.canonical.com/ubuntu/ pr ...
- DOM操作的概念
////dom 操作//核心思想:找到元素 操作元素//js 找元素:// document.getElementById(dd); 唯一确定// 返回的都是数组 数组元素是元素对象// docume ...
- Mastering MariaDB 神秘的MariaDB 中文翻译版
是某群的哥们义务翻译的,宣传一下,还没时间时间读,粗滤看了全部翻译完了300多页佩服 https://github.com/CMant/Mastering-MariaDB- 原地址:如果你需要读,请s ...
- Java图片合并
/** * 纵向合并图片,ossObject.getObjectContent()返回InputStream对象 */ private BufferedImage mergeImage(List< ...
- Windows10远程桌面Ubuntu16.04
一.Ubuntu16.04端软件安装(管理员权限) 1.安装xrdp sudo apt-get install xrdp 2.安装vnc4server sudo apt-get install vnc ...
- Django进阶之查询优化、extra注入SQL及批量创建
Django查询优化 Django的查询优化用到两个函数——select_related()和prefetch_related(). select_related()用的是连表join的方式,主要处理 ...