-
tkinter label_tkinter库(二)
2020-11-25 19:03:47python学习 第八期只有经历过地狱般的磨砺,才能练就创造...只有流过血的手指,才能弹出世间的绝响 ——泰戈尔《飞鸟集》今天让我们继续学习python中的tkinter按钮按钮是一种常见的控件,其函数名为Button,主要参数...python学习 第八期
只有经历过地狱般的磨砺,才能练就创造天堂的力量;只有流过血的手指,才能弹出世间的绝响——泰戈尔《飞鸟集》
今天让我们继续学习python中的tkinter
按钮
按钮是一种常见的控件,其函数名为Button,主要参数包括bg(背景)、command(回调函数)、fg(前景色)、font(前景色)、height(高度)、text(显示文字)和width(宽度)用法是window.Button()例如
运行结果为#!/usr/bin/python# -*- coding:utf-8 -*-import tkinter as tkwindow = tk.Tk()window.geometry("600x600")window.title("我是一个窗口")window.resizable(0,0)tk.Label(window,text="This is a test").pack()tk.Button(window,text="点我").pack()window.mainloop()
当然,我们一定不希望按钮除了点击没有用处,那么我们就给它加一个command参数例如
这样点击按钮的效果是#!/usr/bin/python# -*- coding:utf-8 -*-import tkinter as tkdef Command(): print("按钮被点击") window = tk.Tk()window.geometry("600x600")window.title("我是一个窗口")window.resizable(0,0)tk.Label(window,text="This is a test").pack()tk.Button(window,text="点我",command=Command).pack()window.mainloop()
注意,就是command参数里的函数是不带“()”的按钮被点击
Entry输入框
如果只学了前面的内容,我们一定会发现一个很大的问题,就是没有输入框如果没有,用户便无法自由输入了这个tkinter开发的时候早就考虑过了,并且解决了这个问题而这个函数就是Entry,其常用参数有fg(前景色)、bg(背景色)、width(宽度)和show(展示)这里详细介绍一下show参数,这个东西一般用于“密码框”如果你希望系统不显示用户输入的内容,就靠这个参数了例如你想让输入框内所有已输入内容变为“*”,那么你可以这样
当然,我们还需要指示用户输入什么,并且获取内容因此entry函数一般都要结合button和label而获取内容比较简单,就是 输入框名.get()例如entry = tk.Entry(window,width=40,show="*")entry.pack()
这样的运行结果为#!/usr/bin/python# -*- coding:utf-8 -*-import tkinter as tkdef Command(): print(entry.get())window = tk.Tk()window.geometry("600x600")window.title("我是一个窗口")window.resizable(0,0)tk.Label(window,text="This is a test").pack()entry = tk.Entry(window,width=40)entry.pack()tk.Button(window,text="点我",command=Command).pack()window.mainloop()
然后输入test,点击按钮结果为
是不是非常神奇?test
正文到此结束,长按可以关注公众号 -
python tkinter label标签_Tkinter.Label标签
2021-01-14 15:03:13语法格式如下:Label(父对象,options,…)常用属性汇总简单创建有label标签的窗口简单的创建窗口from tkinter import *root=Tk()root.title('萤火虫')root.geometry('300x400+200+200')root.configure(bg='pink')root...Label标签主要是用于显示文本信息,也可显示图像。语法格式如下:Label(父对象,options,…)
常用属性汇总
简单创建有label标签的窗口
简单的创建窗口
from tkinter import *
root=Tk()
root.title('萤火虫')
root.geometry('300x400+200+200')
root.configure(bg='pink')
root.iconbitmap('1.ico')
label=Label(root,text="hello tkinter!")
label.pack()
root.mainloop()
运行结果:
面向对象写法
from tkinter import *
class Application(Frame):
def __init__(self,master=None):
super().__init__(master)
self.master=master
self.pack()
self.createWidget()
def createWidget(self):
#创建label组件
self.lable=Label(self,text="hello tkinter!")
self.lable.pack()
if __name__ == '__main__':
root=Tk()
root.geometry('300x400+200+200')
root.title('萤火虫')
root.configure(bg='pink')
root.iconbitmap('1.ico')
app=Application(master=root)
root.mainloop()
这两种实现的效果是一样的。
设置label属性
1.目的:设置文字前景色为红色,背景色为白色。
self.lable=Label(self,text="hello tkinter!",
fg="red",bg="white")
运行结果:
2.目的:指定label标签宽度为10,高度为4。
self.lable=Label(self,text="hello tkinter!",
fg="red",bg="white",
width=20,height=3)
运行结果:
3.目的:指定标签文字在标签的位置,nw。
注:
self.lable=Label(self,text="hello tkinter!",
fg="red",bg="white",
width=20,height=3,
anchor="nw")
也可以使用大写常数,NW N NE W CENTER E SW S SE
不用带引号
4.目的:文字换行显示。让标签中的文字达到50像素后自动换行。
self.lable=Label(self,text="hello tkinter!",
fg="red",bg="white",
width=20,height=3,
anchor="nw",
wraplength=50)
5.目的:设置字体为楷体,20像素,带下划线。
注:1.family字形 2.size字号 3.weight 加粗 hold,normal 4.underline 下划线5.overstrike
self.lable=Label(self,text="hello tkinter!",
fg="red",bg="white",
width=20,height=3,
anchor="nw",
font=("kaiti",15,"underline"))
6.目的:指定多行输出qwertyuiopasdfghjklzxcvbnm,并设置最后一行靠左对齐。
label的justify参数可以设置输出最后一行内容是left靠左,right靠右,center居中默认。
设置justify参数。
self.lable=Label(self,text="qwertyuiopasdfghjklzxcvbnm",
fg="red",bg="white",
width=20,height=3,
wraplength=80,
justify="left"
)
7.利用relief属性建立边框。
属性值效果:flat groove raised ridge solid sunken
self.lable=Label(self,text="萤火虫",
relief="sunken"
)
8.更改标签文字与标签区间的间距padx/pady
未设置时效果
设置后
self.lable=Label(self,text="萤火虫",
padx=10,pady=10
)
9.显示图像
#创建label组件
self.image=PhotoImage(file="1.png")
self.lable=Label(self,image=self.image)
该方式只能适用于png,GIF图片。
若想显示jpg图片,需安装pillow模块
from PIL import Image,ImageTk
self.image_file=Image.open("3.jpg")
self.image=ImageTk.PhotoImage(self.image_file)
self.lable=Label(self,image=self.image)
文字和图片同时出现。
compound:left图像在左,right图像在右,top图像在上,bottom图像在下,center文字覆盖在图像上方。
self.image=PhotoImage(file="1.png")
self.lable=Label(self,text="萤火虫寄语",
image=self.image,
compound="center")
10.更改光标形状。cursor
注:图片来源于网络。
原文链接:https://blog.csdn.net/qq_44862120/article/details/107914917
-
tkinter label_tkinter版自制王者荣耀抽卡程序
2020-11-25 19:02:39之前已经写了一个简单的控制台版本爬虫+抽卡程序,可以自己过瘾地抽王者荣耀皮肤。花果山美男子:python自制王者荣耀抽卡程序zhuanlan.zhihu.com今天...信息输出用tkinter的Text控件实现,图片显示则用Label控件...之前已经写了一个简单的控制台版本爬虫+抽卡程序,可以自己过瘾地抽王者荣耀皮肤。
花果山美男子:python自制王者荣耀抽卡程序zhuanlan.zhihu.com今天我们就在它的基础上,做一个tkinter版本,顺便复习一下tkinter的相关知识。
主要的功能就是随机抽卡+保存图片,另外加一个只能抽三次和只能保存一张图片的限制。信息输出用tkinter的Text控件实现,图片显示则用Label控件。
首先创建界面主体,并令其居中显示(因为其间用到了messagebox,这个控件默认显示在屏幕中间且无法更改,为了美观只能手动让主界面也居中了)。
#定位屏幕中心 def center_window(w, h): # 获取屏幕 宽、高 ws = top.winfo_screenwidth() hs = top.winfo_screenheight() # 计算 x, y 位置 x = (ws/2) - (w/2) y = (hs/2) - (h/2) top.geometry('%dx%d+%d+%d' % (w, h, x, y)) top = tkinter.Tk() top.title('王者荣耀') center_window(800,500) #用来计抽卡和保存次数的全局变量 count,count2=0,0 #抽到的英雄名称,这里也设为全局,为了同时用于保存的图片名称 res=""
接下来是实现抽卡并显示图片和保存图片的两个函数:
#抽卡并显示,方法和上篇文章类似 def showImg(): global count,res count += 1 if count > 3: tkinter.messagebox.showerror("错误", "每天只能抽三次!") return 0 path = glob.glob("C:/Users/lin042/Desktop/wangzhe/*/*.jpg") #上篇文章中爬取的图片,将每张图片的路径一起存储到列表path num = len(path)-1 i = random.randint(0,num) pic = path[i] #随机得到列表中的第i个元素,即为随即图片的路径 res = ''.join(re.findall('[u4e00-u9fa5]',pic)) #获取英雄名称(字符串中仅有的中文) namenum = pic[-5] #倒数第五位是图片名称(*.jpg),也就是编号,这里用于保存时的命名 #下面是将图片显示在label控件中,同时更新text中的信息 load = Image.open(pic) load = load.resize((720, 380),Image.ANTIALIAS) #缩放图片 render = ImageTk.PhotoImage(load) t.delete(0.0,END) #清空文本框 t.insert(END,"恭喜你抽到了"+ res +"!") #插入新信息 res = res + namenum #此时res为英雄名称+编号,用于保存 img.config(image=render) #刷新图片 img.image = render #保存图片 def saveImg(): global count2 count2 += 1 if count2 > 1: tkinter.messagebox.showerror("错误", "您只能保存一张!") return 0 a = tkinter.messagebox.askyesno('提示', '只有一次保存机会哦!') #yes返回True,no返回False if a: file_path = 'C:/Users/lin042/Desktop/' #桌面路径 saveimg = img.image saveimg._PhotoImage__photo.write(file_path+res+'.png') #这里只能保存成png,不能保存jpg tkinter.messagebox.showinfo(title = '成功!',message='已保存到桌面!') else: count2 -= 1 pass
最后设置button按钮并布局(这里是用place方法实现,可以随意设置位置,但美不美观就要自己试了):
submit_button = tkinter.Button(top, text ="随机抽卡", font=('黑体', 10),fg='red',width=10,height=2,command = showImg) submit_button.place(x=300, y=10) submit_button2 = tkinter.Button(top, text ="保存图片", font=('黑体', 10),fg='red',width=10,height=2,command = saveImg) submit_button2.place(x=400, y=10) t = tkinter.Text(width=25, height=1.5) t.place(x=300, y=55) img = tkinter.Label(image='') img.place(x=40, y=95) top.mainloop()
其中有几个注意事项:
1.t.insert(END,"恭喜你抽到了"+res+"!")
这是在文本框末尾插入文本,但要想用到END关键字,必须在导入时用from tkinter import *,而不是import tkinter
2.saveimg._PhotoImage__photo.write(file_path+res+'.png')
ImageTk.PhotoImage类型的图片在保存时只能用_PhotoImage__photo.write的方法,其他保存图片的方法都会报错;同时图片不能保存为jpg,但png和gif是可以的。
注:文中保存的是缩放后的图片,不是原图。
下面是完整代码:
import glob from PIL import Image import random import re from tkinter import * import tkinter.messagebox from PIL import Image, ImageTk def center_window(w, h): # 获取屏幕 宽、高 ws = top.winfo_screenwidth() hs = top.winfo_screenheight() # 计算 x, y 位置 x = (ws/2) - (w/2) y = (hs/2) - (h/2) top.geometry('%dx%d+%d+%d' % (w, h, x, y)) top = tkinter.Tk() top.title('王者荣耀') center_window(800,500) count,count2=0,0 res="" def showImg(): global count,res count+=1 if count > 3: tkinter.messagebox.showerror("错误", "每天只能抽三次!") return 0 path = glob.glob("C:/Users/lin042/Desktop/wangzhe/*/*.jpg") num = len(path)-1 i = random.randint(0,num) pic=path[i]#.replace('','/') res = ''.join(re.findall('[u4e00-u9fa5]',pic)) num=pic[-5] load = Image.open(pic) load = load.resize((720, 380),Image.ANTIALIAS) render = ImageTk.PhotoImage(load) t.delete(0.0,END) t.insert(END,"恭喜你抽到了"+res+"!") res=res+num img.config(image=render) img.image = render def saveImg(): global count2 count2+=1 if count2 > 1: tkinter.messagebox.showerror("错误", "您只能保存一张!") return 0 a=tkinter.messagebox.askyesno('提示', '只有一次保存机会哦!') if a: file_path = 'C:/Users/lin042/Desktop/' saveimg = img.image saveimg._PhotoImage__photo.write(file_path+res+'.png') tkinter.messagebox.showinfo(title = '成功!',message='已保存到桌面!') else: count2-=1 pass submit_button = tkinter.Button(top, text ="随机抽卡", font=('黑体', 10),fg='red',width=10,height=2,command = showImg) submit_button.place(x=300, y=10) submit_button2 = tkinter.Button(top, text ="保存图片", font=('黑体', 10),fg='red',width=10,height=2,command = saveImg) submit_button2.place(x=400, y=10) t = tkinter.Text(width=25, height=1.5) t.place(x=300, y=55) img = tkinter.Label(image='') img.place(x=40, y=95) top.mainloop()
至于最后的效果,我录制了一个小视频:
抽抽抽!https://www.zhihu.com/video/1237436252564877312如果嫌抽的不过瘾,那就取消次数限制,独自爽上一天吧!然后统计一下,抽了一百次以后,哪个英雄抽到的次数最多,从此以后他就是你的本命英雄了!
当然,你也可以让女朋友来抽,她抽到什么皮肤,就送她什么(我劝你先把抽卡次数限制为1……)
-
python tkinter label_python tkinter label标签怎么使用?
2021-02-09 07:18:23终于有机会给大家介绍了label标签内容,想必很多小...立马就给大家详细而又简单的说说不部分内容吧~标签(Label)组件在tkinter模块下,可以使用tk.Label 或者ttk.Label去创建Label插件,功能几乎一样。ttk类是后续的t...终于有机会给大家介绍了label标签内容,想必很多小伙伴已经迫不及待听小编说这个最常见的标签函数了吧,大家之所以喜欢,主要还是依赖于这个标签是我们每一次的编程必备,看着大家如此喜欢这个函数,一进入控件学习力,立马就给大家详细而又简单的说说不部分内容吧~
标签(Label)组件
在tkinter模块下,可以使用tk.Label 或者ttk.Label去创建Label插件,功能几乎一样。ttk类是后续的tk类的补强,增添了很多组件。推荐使用ttk类。
如下代码就可以创建一个最简单的标签组件 LB_1。import tkinter as tk
import tkinter.ttk as ttk
window = tk.Tk()
window.title('学习网')
window.resizable(True, True)
window.minsize(200, 100)
window.maxsize(1000, 500)
LB_1 = ttk.Label(window, text='学习网', font='微软雅黑, 12')
LB_1.pack()
window.mainloop()
大家自己运行看下效果哦~
Label组件使用示例:# -*- coding:utf-8 -*-
import tkinter as tk
class App(object):
def __init__(self, mw):
self.mw = mw
self.initWidgets()
def initWidgets(self):
# 创建Labelframe容器
上述就是关于大家经常跟小编提到的label标签的使用内容了,根据大家的需要,整合的能用的到的相关内容,希望可以帮助大家在python的编程上越来越好。
-
tkinter label_Tkinter学习笔记(一)
2020-11-25 19:03:47学习python的意义在于python提供很多数据分析的包,所以如果不是为了...Tkinter是python自带的一款GUI组件,所以相对于其他的各种组件的安装成本来说,学习Tkinter都将会少很多障碍,当然如果python都比维护自己的T... -
tkinter label_tkinter做一个简易提词板
2020-11-25 19:03:03今天我们就用tkinter做一个简单的提词板,用到了tkinter的label来动态显示文字。我们就以最近火爆的《想见你》这首歌为例,按照歌词时间来显示歌词。首先我们要准备好歌词文件,一般是lrc的格式,每句歌词前面都有... -
python tkinter label标签_python tkinter label标签如何使用
2021-03-17 02:29:44python tkinter label标签如何使用发布时间:2020-11-17 09:40:13来源:亿速云阅读:76作者:小新这篇文章主要介绍python tkinter label标签如何使用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们... -
python tkinter label标签_tkinter Label标签动态显示
2021-01-14 15:03:13#==============================================『函库』==============================================import os #操作模块import random #随机模块import time #时间函数import tkinter as tk #GUI模块并备注... -
tkinter-label
2020-06-29 21:28:31本文介绍tkinter中label控件的使用。结合实际的示例来理解label控件的使用,看完本文基本上就能理解label各个属性的含义并能灵活使用,做到心中有谱。 文章目录标签(label)标签属性background\bg,... -
tkinter label背景透明_Tkinter简明教程
2020-12-09 05:13:24本文我们将学习如何使用Tkinter包编写一些图形用户界面程序。Tkinter是Python的一个标准包,因此我们并不需要安装它。我们将从创建一个窗口开始,然后我们在其之上加入一些小组件,比如按钮,复选框等,并使用它们的... -
tkinter Label标签相关
2019-04-22 18:28:49tkinter Label标签相关 -
Python tkinter label 更新方法
2020-12-24 04:53:28from tkinter import Tk, Checkbutton, Label from tkinter import StringVar, IntVar root = Tk() text = StringVar() text.set('old') status = IntVar() def change(): if status.get() == 1: # if clicked ... -
python tkinter label标签_Python Tkinter详解 (二)Label标签的使用
2021-01-28 19:11:34#一个简单到不能再简单的标签import tkinter as tkwindow = tk.Tk()window.title('Label的使用')window.geometry('400x400')label = tk.Label(window,text='我是一个标签')#text为显示的文本内容label.pack()window.... -
Tkinter:Label
2013-11-27 14:00:24该代码是用Tkinter产生一个标签:from Tkinter import *root=Tk()label=Label(root,text='Hello Tkinter !')label.pack()root.mainloop()还有更简单的例子from Tkinter import *root = Tk()root.title('hello ... -
Python tkinter label 更新
2017-04-14 14:08:51网上看的两个例子关于tkinter界面更新的,简单易懂,...from tkinter import Tk, Checkbutton, Label from tkinter import StringVar, IntVarroot = Tk()text = StringVar() text.set('old') status = IntVar()def chan -
echar设置label位置_Tkinter (2)---Label
2021-01-04 14:04:58上一篇咱们创建了一个包含 Label 的Tkinter窗口, 那咱们今天就来说说 Tkinter 的 Label 控件吧。Label, 正如其名, 是Tkinter 显示文本的组件,但它也能够显示图片哦~ Label 显示文本#Label组件显示文本 import ... -
python tkinter label configure_Python Tkinter Label每10秒重绘一次
2020-12-23 15:17:03在tkinter中运行函数或更新标签的正确方法是使用after方法.这会将事件队列中的事件放在将来的某个时间执行.如果你有一个功能可以做一些工作,然后把自己放回事件队列,你已经创建了将永远运行的东西.以下是基于您的... -
python tkinter label靠左对齐_Python Tkinter基础学习记录标签,pythontkinter,Label
2021-02-03 00:53:23学习python tkinter内容记录 Tk()对象from tkinter import *from PIL import Image,ImageTk #用于在Label标签中显示jpg格式的图片from tkinter.ttk import Separator #分隔线root = Tk()#将Tk对象名称rootroot.title... -
Tkinter之Label
2016-05-16 14:59:58所以图形界面不可少,,TKinter, 就用它了, 简单,满足要求。 #coding: utf8 from Tkinter import * def tklabel(event): s = Label(root, text="IloveXin") s.pack() root = Tk() root.... -
Tkinter Label选项
2019-05-18 21:13:12设置当Label处于活动状态(通过state选项设置状态)的背景色 2.默认值由系统指定 activeforeground 1.设置当Label处于活动状态(通过state选项设置状态)的前景色 2.默认值由系统指定 ... -
python tkinter label 文本_Python-Tkinter 窗口组件之Label
2021-01-14 15:03:52LabelLabel(标签)组件用于在屏幕上显示文本或图像,并且使用双缓冲(内容更新时没有闪烁)。Label 组件仅能显示单一字体的文本,但文本可以跨越多行。另外,还可以为其中的个别字符加上下划线(例如用于表示键盘快捷键)... -
Tkinter之Button&Label
2020-12-22 10:11:07Tkinter之Button&Label import tkinter as tk window = tk.Tk() window.title('my window') #设置窗口的名字 window.geometry('240x173') #设置窗口大小 #创建一个变量var, tk中的特定形式 var = tk.StringVar() #... -
The Tkinter Label Widget
2020-07-14 09:49:34The Tkinter Label Widget Label部件能显示文本或者图像。文本只能显示一种字体, 但是可以分为多行。此外,一个字符能用采用下划线,例如做一个快捷方式。 什么时候采用Label部件? Label部件用于显示文本和图像... -
TKinter Label 和 Button
2020-04-01 17:09:32TKinter Label 和 Button 觉得有用的话,欢迎一起讨论相互学习~Follow Me 感谢莫烦老师 http://i.youku.com/pythontutorial 静态显示Label 创建windows window = tk.Tk() window.title('my window') # 标题 window.... -
python tkinter label font_Python,Tkinter,tkFont:Label resiz
2021-01-14 15:04:08我不确定标签为什么会改变字体大小,但我有一个解决问题的办法。在首先,传入的事件参数包含对发生事件的小部件的引用,因此不再需要为每个标签使用两个...在见下文:from Tkinter import *import tkFontdef move1... -
python tkinter刷新界面_Python tkinter label 更新方法
2020-11-30 11:43:17网上看的两个例子关于...例子_1:代码_1:from tkinter import Tk, Checkbutton, Labelfrom tkinter import StringVar, IntVarroot = Tk()text = StringVar()text.set('old')status = IntVar()def change():if s... -
Tkinter.Label标签
2020-08-11 12:03:41Label标签常用属性汇总简单创建有label标签的窗口设置label属性 Label标签主要是用于显示文本信息,也可显示图像。语法格式如下:Label(父对象...from tkinter import * root=Tk() root.title('萤火虫') root.geometry