8.3 顶层窗口Toplevel

2020-06-21  本文已影响0人  蝉时雨丶

Toplevel窗口的基本概念

这个控件的功能类似于Frame,但是这个控件所产生的容器是一个独立的窗口,有自己的标题栏和边框。
它的构造方法语法如下:

Toplevel(options,···)

下列是LabelFrame()方法内其他常用的options参数。
(1)bg或background:背景色彩。
(2)borderwidth或bd:标签边界宽度,默认是2.
(3)cursor:当鼠标光标在Toplevel窗口上时的光标形状。
(4)fg:文字前景颜色。
(5)font:字形。
(6)height:窗口高度。
(7)width:窗口宽度。

建立一个Toplevel窗口,为了区分在Toplevel窗口中增加字符串"I am a toplevel."

from tkinter import *

root=Tk()

root.title("ch8_9")

tl=Toplevel()
Label(tl,text='I am a Toplevel').pack()

root.mainloop()

Toplevel窗口建立完成后,如果关闭Toplevel窗口,原主窗口仍可以继续使用,但是如果关闭了主窗口,
Toplevel窗口将自动关闭。

使用Toplevel窗口仿真对话框

实例:这个程序执行时会有一个Click Me按钮,当单击此按钮时会由一个随机数产生Yes、No、Exit字符串,这些字符串会出现在
Toplevel窗口内。

from tkinter import *
import random

root=Tk()
root.title("ch8_11")

msgYes,msgNo,msgExit=1,2,3
def MessageBox():
    msgType=random.randint(1,3)
    if msgType==msgYes:
        labTxt='Yes'
    elif msgType==msgNo:
        labTxt='No'
    elif msgType==msgExit:
        labTxt='Exit'
    tl=Toplevel()
    tl.geometry("300x180")
    tl.title("Message Box")
    Label(tl,text=labTxt).pack(fill=BOTH,expand=True)

btn=Button(root,text='Click Me',command=MessageBox)
btn.pack()

root.mainloop()

运行结果:


仿真对话框
上一篇下一篇

猜你喜欢

热点阅读