python tkinter使用(十一)

发布时间 2023-12-26 20:21:47作者: 夏沫琅琊

python tkinter使用(十一)

本篇文章主要讲下tkinter 窗口的一些属性,以及实现无法关闭的窗口中遇到的一些问题.

#!/usr/bin/python3
# -*- coding: UTF-8 -*-
"""
 @Author: zh
 @Time 2023/11/28 下午13:23  .
 @Email:
 @Describe:
"""
from tkinter import *
import tkinter as tk
from tkinter import messagebox

root = tk.Tk()
root.title("无法关闭")
root.geometry("500x500+500+200")
# 禁用关闭按钮
root.protocol("WM_DELETE_WINDOW", lambda: None)
# 禁止缩放窗口 缩放按钮隐藏
# root.resizable(width=False, height=False)
root.resizable(False,False)
# root.resizable(0,0)
# 让窗口一直在前台顶部
root.attributes("-topmost", True)
#root.attributes('-fullscreen', True) # 全屏禁用窗口

# 隐藏工具栏:可以隐藏窗口的标题栏和边框,窗口将无法被拖动和关闭,但是同样的也无法使用messagebox等弹出窗口
# root.overrideredirect(True)

def closed():
    root.destroy()

tk.Button(text="同意",command=closed).pack()

def unClosed():
    messagebox.showwarning(message="气不气,就是不给你关")
    print("关不掉,气不气")

tk.Button(text="不同意",command=unClosed).pack()

root.mainloop()

tk.Tk()窗口禁止缩放可以通过resizable()实现:

  1. root.resizable(width=False, height=False)
  2. root.resizable(False,False)
  3. root.resizable(0,0)

overrideredirect()以隐藏窗口的标题栏和边框,当设置True时,窗口将无法被拖动和关闭.

root.geometry("500x500+500+200") 构建窗口:大小为500x500,显示位置为x=500,y=200