设置tkinter窗口的置顶属性

2019年10月5日 / 5,735次阅读 / Last Modified 2019年10月5日
tkinter

使用python标准库tkinter编写GUI程序,设置窗口的置顶属性是非常简单的一件事情。我们只需要一行代码,就能搞定窗口置顶。

import tkinter as tk
from tkinter import Toplevel

def topWin():
    tp = Toplevel(root)
    tp.attributes('-topmost', True)

root = tk.Tk()
bn1 = tk.Button(root, text='window', command=topWin)
bn1.pack()
root.mainloop()

这段代码很简单,root窗口有一个按钮,每按一次,就生成一个Toplevel窗口,并对此Toplevel窗口设置置顶属性。

多个置顶窗口之间可以相互遮挡!

要去掉置顶属性,如下:


tp.attributes('-topmost', False)

下面的代码,来自tklog项目,通过窗口底部的按钮(pin or unpin),设置log window是否置顶:

    def _pin(self):
        if self.pin == 0:
            self.win.attributes('-topmost', True)
            self.pin = 1
            self.top['text'] = 'Unpin'
        elif self.pin == 1:
            self.win.attributes('-topmost', False)
            self.pin = 0
            self.top['text'] = 'Pin'

-- EOF --

本文链接:https://www.pynote.net/archives/1248

留言区

您的电子邮箱地址不会被公开。 必填项已用*标注


前一篇:
后一篇:

More

麦新杰的Python笔记

Ctrl+D 收藏本页


©Copyright 麦新杰 Since 2019 Python笔记

go to top