python3 - tkinter模块学习,内置GUI

本文介绍了Python3的tkinter模块,详细讲解了如何创建窗口、设置窗口属性,以及使用pack()、grid()和place()进行几何管理。此外,还探讨了各种常用控件如Label、Entry、Text、Button、Listbox和Scrollbar的用法,并展示了如何将滚动条与控件绑定。
摘要由CSDN通过智能技术生成

目录

创建窗口的必备环节

窗口常用属性

几何管理

- pack():包装

- grid():网格

-place():位置

常用控件

 - Label (根对象,[属性列表])

 - Frame :在屏幕上创建矩形容器,用来布局窗口

- Entry:创建单行可输入文本框

- Text:向空间内输入文本,t = Text(根对象)

- Button :创建按钮,Button(master,option = value,……)

- Listbox :列表空间,可以含有一个或多个文本项,可单选也可多选

- Scrollbar(滚动条)

 - Listbox与Scrollbar绑定

- Text与Scrollbar绑定


创建窗口的必备环节

import tkinter

# 初始化Tk()
top = tkinter.Tk()
# 进入消息循环
top.mainloop()


窗口常用属性

title('hello tkinter'):设置窗口标题
geometry('200x100'):设置窗口大小,注意是x而不是*
resizable((width=True, height=True):设置窗口是否可以变化长宽,默认可变
import tkinter
# 初始化Tk()

top = tkinter.Tk()

top.title('hello tkinter')
top.geometry('200x100')
top.resizable()

# 进入消息循环
top.mainloop()


 

 

几何管理

- pack():包装

      1- side: 空间位于容器的方位:
            参数:left,top(默认),right,bottom
        2- fill :填充:
                    x:水平方向填充
        y:竖直方向填充
        both:水平和竖直方向填充
        none:不填充
        3- expand:yes:扩展整个空白区,no:不扩展
        4- anchor: N:北上,E:东右,S:南下,W:西左,CENTER:中间

  •             padx:x方向的外边距
  •       pady:y方向的外边距
  •       ipadx:x方向的内边距
  •       ipady:y方向的内边距

- grid():网格

-place():位置

        1- 使用绝对位置 place(x=0, y=0)


        2- 使用相对坐标 lb.place(relx = 1,rely = 0.5,anchor = CENTER)


        3- 同时制定多个组件 
            lb = Label(root, text='hello Place')
            v = IntVar()
            for i in range(5):
                Radiobutton(
                    root,
                    text='Radio' + str(i),
                    variable=v,
                    value=i
                ).place(x=80 * i, anchor=NW)
            root.mainloop()


        4- 同时使用相对和绝对坐标
            # 先设置相对坐标为(0.5,0.5),再使用(-200,-200)将坐标作偏移(-200,-200)
                lb1.place(relx=0.5, rely=0.5, anchor=CENTER, x=-200, y=-200)


        5-使用in来指定放置的容器
            # 创建一个Label
            label.place(relx=0.5, rely=0.5, anchor=CENTER)
            bt = Button(root, text='button in root', fg='yellow')
            bt.place(in_=label)
            #指定bt放的位置是label的默认(0,0)处


        6-深入in用法
            lb1.place(in_=fm1, relx=0.5, rely=0.5, anchor=CENTER)
            bt1.place(in_=fm3, anchor=W)


        7-事件与Place结合使用


常用控件

常用控件的用法:

  1. Label:Label(根对象, [属性列表])
  2. Frame:Frame(根对象, [属性列表]),在屏幕上创建一块矩形区域,多作为容器来布局窗体
  3. Entry:lb =Entry(根对象, [属性列表])
  4. Text:t = Text(根对象)
  5. Button:Button ( master, option=value, ... )
  6. Listbox:lb = ListBox(根对象, [属性列表])
  7. Scrollbar:滚动条

注:每个控件最后都要加上几何管理进行布局,不然无法输出


 - Label (根对象,[属性列表])

text:要现实的文本
bg:背景颜色
fg : 前景颜色(就是字体颜色)
font: 字体(样式, 大小)
width: 控件宽度
height: 控件高度
justify: 文字的对齐方向,可选值为 RIGHT, CENTER, LEFT, 默认为 Center.
padx: 指定水平方向的边距, 默认为1像素.
  • 19
    点赞
  • 115
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值