精华内容
下载资源
问答
  • python学习 第八期只有经历过地狱般的磨砺,才能练就创造...只有流过血的手指,才能弹出世间的绝响 ——泰戈尔《飞鸟集》今天让我们继续学习python中的tkinter按钮按钮是一种常见的控件,其函数名为Button,主要参数...

    python学习 第八期

    1f5df857328f04b856d31ec3e050163f.png

    只有经历过地狱般的磨砺,才能练就创造天堂的力量;只有流过血的手指,才能弹出世间的绝响

                                                                                  ——泰戈尔《飞鸟集》

    今天让我们继续学习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()
    运行结果为

    8c7a4a09fdb847c107f76820f96335fb.png

    当然,我们一定不希望按钮除了点击没有用处,那么我们就给它加一个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 = tk.Entry(window,width=40,show="*")entry.pack()
    当然,我们还需要指示用户输入什么,并且获取内容因此entry函数一般都要结合button和label而获取内容比较简单,就是 输入框名.get()例如
    #!/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()
    这样的运行结果为

    f641c0c7a8bf954352be0cdc4998b940.png

    然后输入test,点击按钮结果为
    test
    是不是非常神奇?
    正文到此结束,长按可以关注公众号

    dc82c958b721b9f410b5cd9715d9bbe4.png

    展开全文
  • 语法格式如下: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

    展开全文
  • 之前已经写了一个简单的控制台版本爬虫+抽卡程序,可以自己过瘾地抽王者荣耀皮肤。花果山美男子: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()

    至于最后的效果,我录制了一个小视频:

    v2-118d6dbf76f5a481bef85daaa56ab2be.jpeg
    抽抽抽!https://www.zhihu.com/video/1237436252564877312

    如果嫌抽的不过瘾,那就取消次数限制,独自爽上一天吧!然后统计一下,抽了一百次以后,哪个英雄抽到的次数最多,从此以后他就是你的本命英雄了!

    当然,你也可以让女朋友来抽,她抽到什么皮肤,就送她什么(我劝你先把抽卡次数限制为1……)

    展开全文
  • 终于有机会给大家介绍了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的编程上越来越好。

    展开全文
  • 学习python的意义在于python提供很多数据分析的包,所以如果不是为了...Tkinter是python自带的一款GUI组件,所以相对于其他的各种组件的安装成本来说,学习Tkinter都将会少很多障碍,当然如果python都比维护自己的T...
  • 今天我们就用tkinter做一个简单的提词板,用到了tkinterlabel来动态显示文字。我们就以最近火爆的《想见你》这首歌为例,按照歌词时间来显示歌词。首先我们要准备好歌词文件,一般是lrc的格式,每句歌词前面都有...
  • python tkinter label标签如何使用发布时间:2020-11-17 09:40:13来源:亿速云阅读:76作者:小新这篇文章主要介绍python tkinter label标签如何使用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们...
  • #==============================================『函库』==============================================import os #操作模块import random #随机模块import time #时间函数import tkinter as tk #GUI模块并备注...
  • tkinter-label

    2020-06-29 21:28:31
    本文介绍tkinterlabel控件的使用。结合实际的示例来理解label控件的使用,看完本文基本上就能理解label各个属性的含义并能灵活使用,做到心中有谱。 文章目录标签(label)标签属性background\bg,...
  • tkinter label背景透明_Tkinter简明教程

    千次阅读 2020-12-09 05:13:24
    本文我们将学习如何使用Tkinter包编写一些图形用户界面程序。Tkinter是Python的一个标准包,因此我们并不需要安装它。我们将从创建一个窗口开始,然后我们在其之上加入一些小组件,比如按钮,复选框等,并使用它们的...
  • tkinter Label标签相关

    2019-04-22 18:28:49
    tkinter Label标签相关
  • from 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 ...
  • #一个简单到不能再简单的标签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
  • 上一篇咱们创建了一个包含 LabelTkinter窗口, 那咱们今天就来说说 TkinterLabel 控件吧。Label, 正如其名, 是Tkinter 显示文本的组件,但它也能够显示图片哦~ Label 显示文本#Label组件显示文本 import ...
  • tkinter中运行函数或更新标签的正确方法是使用after方法.这会将事件队列中的事件放在将来的某个时间执行.如果你有一个功能可以做一些工作,然后把自己放回事件队列,你已经创建了将永远运行的东西.以下是基于您的...
  • 学习python tkinter内容记录 Tk()对象from tkinter import *from PIL import Image,ImageTk #用于在Label标签中显示jpg格式的图片from tkinter.ttk import Separator #分隔线root = Tk()#将Tk对象名称rootroot.title...
  • TkinterLabel

    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.默认值由系统指定 ...
  • LabelLabel(标签)组件用于在屏幕上显示文本或图像,并且使用双缓冲(内容更新时没有闪烁)。Label 组件仅能显示单一字体的文本,但文本可以跨越多行。另外,还可以为其中的个别字符加上下划线(例如用于表示键盘快捷键)...
  • Tkinter之Button&Label

    2020-12-22 10:11:07
    Tkinter之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:34
    The Tkinter Label Widget Label部件能显示文本或者图像。文本只能显示一种字体, 但是可以分为多行。此外,一个字符能用采用下划线,例如做一个快捷方式。 什么时候采用Label部件? Label部件用于显示文本和图像...
  • TKinter Label 和 Button

    2020-04-01 17:09:32
    TKinter Label 和 Button 觉得有用的话,欢迎一起讨论相互学习~Follow Me 感谢莫烦老师 http://i.youku.com/pythontutorial 静态显示Label 创建windows window = tk.Tk() window.title('my window') # 标题 window....
  • 我不确定标签为什么会改变字体大小,但我有一个解决问题的办法。在首先,传入的事件参数包含对发生事件的小部件的引用,因此不再需要为每个标签使用两个...在见下文:from Tkinter import *import tkFontdef move1...
  • 网上看的两个例子关于...例子_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:41
    Label标签常用属性汇总简单创建有label标签的窗口设置label属性 Label标签主要是用于显示文本信息,也可显示图像。语法格式如下:Label(父对象...from tkinter import * root=Tk() root.title('萤火虫') root.geometry

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,316
精华内容 926
关键字:

labeltkinter