Tkinter教程之Toplevel篇

'''Tkinter教程之Toplevel篇'''
# TopLevel与Frame类似,但它包含窗体属性(如Title)
'''1.创建简单的Toplevel'''
# -*- coding: utf-8 -*-
from tkinter import *

root = Tk()
tl = Toplevel()
# 为了区别root和tl,我们向tl中添加了一个Label
Label(tl, text='hello label').pack()
root.mainloop()
# 运行结果生成了两个窗体,一个是root启动的,另一个则是Toplevel创建的,它包含有一个label;
# 关闭tl则没有退出程序,Tk仍旧工作;若关闭Tk,整个Tk结束tl也结束,它不能单独存在。

'''2.设置Toplevel的属性'''
# title设置标题
# geometry设置宽和高
# -*- coding: utf-8 -*-
from tkinter import *

root = Tk()
tl = Toplevel()
# 设置tl的title
tl.title('hello Toplevel')
# 设置tl在宽和高
tl.geometry('400x300')
# 为了区别root和tl,我们向tl中添加了一个Label
Label(tl, text='hello label').pack()
root.mainloop()

'''3.使用Toplevel自己制作提示框'''
# -*- coding: utf-8 -*-
from tkinter import *

root = Tk()
mbYes, mbYesNo, mbYesNoCancel, mbYesNoAbort = 0, 1, 2, 4


# 定义一个消息对话框,依据传入的参数不同,弹出不同的提示信息
def MessageBox():  # 没有使用使用参数
    mbType = mbYesNo
    textShow = 'Yes'
    if mbType == mbYes:
        textShow = 'Yes'
    elif mbType == mbYesNo:
        textShow = 'YesNo'
    elif mbType == mbYesNoCancel:
        textShow = 'YesNoCancel'
    elif mbType == mbYesNoAbort:
        textShow = 'YesNoAbort'
    tl = Toplevel(height=200, width=400)
    Label(tl, text=textShow).pack()


# 由Button来启动这个消息框,因为它使用了空的回调函数,故MessageBox改为了无参数形式,使用了固定
# 值mbYesNo
Button(root, text='click me', command=MessageBox).pack()
root.mainloop()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值