tkinter窗口

本文详细介绍了Python的tkinter库中各种GUI控件的使用,包括Label、Button、Entry、Text、Scrollbar、Checkbutton、Radiobutton、Listbox、Scale、Spinbox、Menu、Combobox、Frame等,并探讨了表格数据、树状数据的展示,以及布局管理如绝对布局、相对布局和表格布局。此外,还讲解了鼠标和键盘事件的响应方法,如点击、移动、光标进入离开事件以及按键事件处理。
摘要由CSDN通过智能技术生成

tkinter


创建窗口,后续会省略该步骤

import tkinter
# 创建主窗口
win = tkinter.Tk()
#窗口标题
win.title('sunck')
#窗口大小和位置
win.geometry('400x400+200+400')

最后窗口显示

win.mainloop()

Label控件

'''
Label:标签控件,可以显示文本

'''
# anchor=''  e东s南w西n北 center  (八个方向)英文单词   #位置
# text:显示文本内容
label=tkinter.Label(win,
                    text='hello python', bg='pink',
                    fg='red',font=('黑体,14'),
                    width=20, height=100,
                    wraplength=40,#指定宽度后换行
                    justify='left',#换行后的对齐方式 (这里左对齐)
                    anchor='w',    #位置
                    )
#把内容显示出来
label.pack()

Button控件

'''
按钮
'''
def func():
    print('hello python')
#dcommand  点击事件
button1=tkinter.Button(win,text='按钮',command=func,
                     width=20,height=5)
button1.pack()
button2=tkinter.Button(win,text='按钮',
                       command=lambda:print('hello'),
                        width=20,height=5)
button2.pack()
button3=tkinter.Button(win,text='按钮',
                       command=win.quit)#quit关闭窗口
button3.pack()

Entry输入控件

'''
输入控件
用于显示简单的文本内容

'''
# 绑定变量
e = tkinter.Variable()
# show 密文*号显示输入内容
# enntry=tkinter.Entry(win,show='*')
enntry = tkinter.Entry(win, textvariable=e)
enntry.pack()

# e就代表输入框这个对象
# 设置值
e.set('hello python')
#取值
print(e.get())

tex控件

'''
文本控件,用于显示多行文本
'''
#height 显示行数
text=tkinter.Text(win,width=30,height=2,)
text.pack()
str='zxcvbnm asdhjsk wryewtuo fdjslaf hfdsa we rewfjsdafj fdaj f'
text.insert(tkinter.INSERT,str)

带滚动条的text控件

# 创建滚动条
scroll=tkinter.Scrollbar()
text=tkinter.Text(win,width=30,height=4,)
# side 放到窗体的哪一侧
scroll.pack(side=tkinter.RIGHT,fill=tkinter.Y)
text.pack(side=tkinter.LEFT,fill=tkinter.Y)
#关联(滚动条和行数)
scroll.config(command=text.yview) #滚动条控制文本动
text.config(yscrollcommand=scroll.set)#文本控制滚动条动
str='zxcvbnm asdhjsk wryewtuo fdjslaf hfdsa we zxcvbnm asdhjsk wryewtuo fdjslaf hfdsa we zxcvbnm asdhjsk wryewtuo fdjslaf hfdsa we rewfjsdafj fdaj f'
text.insert(tkinter.INSERT,str)

Checkbutton多选按钮控件

def updata():
    message=''
    if hobby1.get()==True:
        message+='aaa'
    if hobby2.get()==True:
        message+='bbb'
    if hobby3.get()==True:
        message+='ccc'
    #清除text中所有内容
    text.delete(0.0,tkinter.END)#0.0第零行到第最后一行END
    text.insert(tkinter.INSERT,message)#添加到显示的文本框中
#绑定的变量
hobby1=tkinter.BooleanVar()
check1=tkinter.Checkbutton(win,text='aaa',
                           variable=hobby1,
                           command=updata)
check1.pack()
hobby2=tkinter.BooleanVar()
check2=tkinter.Checkbutton(win,text='bbb',
                           variable=hobby2,
                           command=updata)
check2.pack()
hobby3=tkinter.BooleanVar()
check3=tkinter.Checkbutton(win,text='ccc',
                           variable=hobby3,
                           command=updata)
check3.pack()
text=tkinter.Text(win,width=50,height=5)
text.pack()

Radiobutton 单选框控件

def updata():
    print(r.get()
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值