python实现点击按钮切换到另外一个界面_Python GUI代码单击按钮打开另一个窗口分隔符...

本文介绍了如何在Python的GUI应用中,通过点击按钮来打开一个新的窗口。关键在于使用`Toplevel`创建子窗口,并设置`command`属性为函数名,无需括号和参数。同时,使用`transient`方法确保子窗口始终位于父窗口之上。另外,还展示了如何在子窗口关闭后重新启用主窗口的按钮。
摘要由CSDN通过智能技术生成

command只需要函数名-不需要()和参数。

使用wButton = Button(self, text='text', command = self.OnButtonClick)

如果使用command = self.OnButtonClick(),则运行self.OnButtonClick(),结果将分配给command。如果您想动态地为command创建函数,它可能非常有用。

要使子窗口始终位于父窗口的顶部,可以使用child.transient(parent)

在你的代码中应该是top.transient(self)def OnButtonClick(self):

top = Toplevel()

top.title("title")

top.geometry("300x150+30+30")

top.transient(self)

topButton = Button(top, text="CLOSE", command = self.destroy)

topButton.pack()

您可以使用.config(state='disabled')和.config(state='normal')禁用/启用按钮。

您可以在OnButtonClick()中禁用主窗口按钮,但您需要新函数在子窗口关闭之前/之后启用该按钮。from Tkinter import *

class Window(Tk):

def __init__(self, parent):

Tk.__init__(self, parent)

self.parent = parent

self.initialize()

def initialize(self):

self.geometry("600x400+30+30")

self.wButton = Button(self, text='text', command = self.OnButtonClick)

self.wButton.pack()

def OnButtonClick(self):

self.top = Toplevel()

self.top.title("title")

self.top.geometry("300x150+30+30")

self.top.transient(self)

self.wButton.config(state='disabled')

self.topButton = Button(self.top, text="CLOSE", command = self.OnChildClose)

self.topButton.pack()

def OnChildClose(self):

self.wButton.config(state='normal')

self.top.destroy()

if __name__ == "__main__":

window = Window(None)

window.title("title")

window.mainloop()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值