如何更改 Tkinter 中的标题栏样式?

问题描述 投票:0回答:1

在 Lazarus IDE (Pascal) 中,我可以选择标题栏样式(“BorderStyle”),而无需编写代码。 是否可以在 Pygubu-Designer 中创建类似的东西,或者只需添加一行代码?

python tkinter lazarus pygubu
1个回答
0
投票

这是可能的,但你已经在 tkinter 中自己制作了弹出窗口。只需几行代码就可以轻松完成。

对于第一个窗口样式,您必须使用

overrideredirect
方法完全删除标题。

import tkinter

root = tkinter.Tk() # use toplevel if you have parent window
root.geometry("400x200")

root.overrideredirect(1)

tkinter.Label(root, text="App").pack(padx=5, anchor="w")

root.mainloop()

对于第二个,使用此代码从标题栏中删除最小/最大按钮:

import tkinter

root = tkinter.Toplevel()

root.geometry("400x200")

root.transient(root.master)
root.focus()
root.master.attributes("-alpha",0) # remove this line if you have a parent window

root.mainloop()

第三种风格是默认风格,你不需要做任何事情。

import tkinter

root = tkinter.Tk() # use toplevel if you have parent window
root.geometry("400x200")

root.mainloop()

对于最后一个样式,只需添加这一行

root.attribute("-toolwindow",1)

import tkinter

root = tkinter.Tk() 
root.geometry("400x200")

root.attributes("-toolwindow",1)

root.mainloop()

希望这会有所帮助:)

© www.soinside.com 2019 - 2024. All rights reserved.