当前位置 博文首页 > json_li的博客:python tkinter label、button控件简单应用

    json_li的博客:python tkinter label、button控件简单应用

    作者:[db:作者] 时间:2021-08-25 15:50

    目录

    一、tkinter Label控件

    1.语法和属性:

    2.简单示例:

    ?

    二、tkinter Button控件

    1.语法和属性:

    ?2.简单示例:

    ?

    三、Label控件结合button控件


    一、tkinter Label控件

    Label 控件用于创建一个显示方块,可以在这个显示方块内放置文字或图片。

    1.语法和属性:

    w = Label( master, option, ... )
    
    # master: 框架的父容器。
    
    # options: 可选项,即该标签的可设置的属性。这些选项可以用键-值的形式设置,并以逗号分隔。
    
    序号可选项 & 描述
    1

    anchor

    文本或图像在背景内容区的位置,默认为 center,可选值为(n,s,w,e,ne,nw,sw,se,center)eswn 是东南西北英文的首字母,表示:上北下南左西右东。

    2

    bg

    标签背景颜色

    4

    bd

    标签的大小,默认为 2 个像素

    4

    bitmap

    指定标签上的位图,如果指定了图片,则该选项忽略

    5

    cursor

    鼠标移动到标签时,光标的形状,可以设置为 arrow, circle, cross, plus 等。

    6

    font

    设置字体。

    7

    fg

    设置前景色。

    8

    height

    标签的高度,默认值是 0。

    9

    image

    设置标签图像。

    10

    justify

    定义对齐方式,可选值有:LEFT,RIGHT,CENTER,默认为 CENTER。

    11

    padx

    x 轴间距,以像素计,默认 1。

    12

    pady

    y 轴间距,以像素计,默认 1。

    13

    relief

    边框样式,可选的有:FLAT、SUNKEN、RAISED、GROOVE、RIDGE。默认为 FLAT。

    14

    text

    设置文本,可以包含换行符(\n)。

    15

    textvariable

    标签显示 Tkinter 变量,StringVar。如果变量被修改,标签文本将自动更新。

    16

    underline

    设置下划线,默认 -1,如果设置 1,则是从第二个字符开始画下划线。

    17

    width

    设置标签宽度,默认值是 0,自动计算,单位以像素计。

    10

    wraplength

    设置标签文本为多少行显示,默认为 0。

    2.简单示例:

    import tkinter as tk
    
    
    root = tk.Tk()
    
    root.title('古诗赏析')
    
    # 多行文本使用 可实现换行
    txt = """ 
    破阵子·为陈同甫赋壮词以寄之
    【作者】辛弃疾 【朝代】宋
    
    醉里挑灯看剑,梦回吹角连营。
    八百里分麾下炙,五十弦翻塞外声,沙场秋点兵。
    
    马作的卢飞快,弓如霹雳弦惊。
    了却君王天下事,赢得生前身后名。可怜白发生!  
    """
    
    # 标签控件
    lb = tk.Label(
        text=txt,
        bg='#e9faff',
        font=('黑体', 20)
    )
    # 将控件放置在父控件内之前,规划此控件在区块内的位置
    lb.pack()
    
    # 开始程序循环
    root.mainloop()

    效果如图:

    ?

    二、tkinter Button控件

    Tkinter 按钮组件用于在 Python 应用程序中添加按钮,按钮上可以放上文本或图像,

    按钮可用于监听用户行为,能够与一个 Python 函数关联,当按钮被按下时,自动调用该函数

    1.语法和属性:

    w = Button( master, option=value, ... )
    
    # master: 按钮的父容器。
    
    # options: 可选项,即该按钮的可设置的属性。这些选项可以用键 = 值的形式设置,并以逗号分隔。
    
    序号可选项 & 描述
    1

    activebackground

    当鼠标放上去时,按钮的背景色

    2

    activeforeground

    当鼠标放上去时,按钮的前景色

    3

    bd

    按钮边框的大小,默认为 2 个像素

    4

    bg

    按钮的背景色

    5

    command

    按钮关联的函数,当按钮被点击时,执行该函数

    6

    fg

    按钮的前景色(按钮文本的颜色)

    7

    font

    文本字体

    8

    height

    按钮的高度

    9

    highlightcolor

    要高亮的颜色

    10

    image

    按钮上要显示的图片

    11

    justify

    显示多行文本的时候,设置不同行之间的对齐方式,可选项包括LEFT, RIGHT, CENTER

    12

    padx

    按钮在x轴方向上的内边距(padding),是指按钮的内容与按钮边缘的距离

    13

    pady

    按钮在y轴方向上的内边距(padding)

    14

    relief

    边框样式,设置控件3D效果,可选的有:FLAT、SUNKEN、RAISED、GROOVE、RIDGE。默认为 FLAT。

    15

    state

    设置按钮组件状态,可选的有NORMAL、ACTIVE、 DISABLED。默认 NORMAL。

    16

    underline

    下划线。默认按钮上的文本都不带下划线。取值就是带下划线的字符串索引,为 0 时,第一个字符带下划线,为 1 时,前两个字符带下划线,以此类推

    17

    width

    按钮的宽度,如未设置此项,其大小以适应按钮的内容(文本或图片的大小)

    18

    wraplength

    限制按钮每行显示的字符的数量

    19

    text

    按钮的文本内容

    19

    anchor

    锚选项,控制文本的位置,默认为中心

    ?2.简单示例:

    import tkinter as tk
    
    root = tk.Tk()
    
    
    def clickFun():
        print('hello world')
    
    # 绑定点击事件
    B = tk.Button(text="点我", command=clickFun)
    
    B.pack()
    
    # 进入程序循环
    root.mainloop()

    效果如图:

    ?

    三、Label控件结合button控件

    效果如下图:点击关闭即关闭此窗口

    代码如下:

    import tkinter as tk
    from PIL import Image, ImageTk
    
    
    root = tk.Tk()
    
    root.title('古诗赏析')
    
    # 多行文本使用 可实现换行
    txt = """ 
    破阵子·为陈同甫赋壮词以寄之
    辛弃疾 宋
    
    
    
    
    
    
    
    
    
    醉里挑灯看剑,梦回吹角连营。
    八百里分麾下炙,五十弦翻塞外声,沙场秋点兵。
    马作的卢飞快,弓如霹雳弦惊。
    了却君王天下事,赢得生前身后名。可怜白发生!  
    """
    # 设置背景图片
    path = "D:\\lianxi_py\\three\\image\\"
    image = ImageTk.PhotoImage(file=path + "11.jpg")
    
    # 标签控件
    lb = tk.Label(
        root,
        text=txt,
        bg='#e9faff',
        font=('黑体', 10),
        pady=5,
        compound=tk.CENTER,
        image=image
    )
    # 将控件放置在父控件内之前,规划此控件在区块内的位置
    lb.pack()
    
    # 增加按钮 给按钮绑定一个关闭事件
    B = tk.Button(
        text="关闭",
        bg="#e9faff",
        font=('黑体', 20),
        command=root.quit
    )
    B.pack()
    
    # 开始程序循环
    root.mainloop()
    

    ?

    cs
    下一篇:没有了