python gui多界面切换
时间: 2023-08-15 18:14:30 浏览: 173
在Python中,可以使用tkinter模块来实现GUI界面的多界面切换。一种常见的方法是使用Frame作为容器,然后在需要切换界面的时候,销毁当前的Frame并创建新的Frame。下面是一个简单的示例代码:
```python
from tkinter import *
class LoginPage(object):
def bf_goRegister(self):
self.goRegister()
def __init__(self, goRegister):
self.goRegister = goRegister
self.root = Tk()
Label(self.root, text="用户").grid(row=0, column=0)
Entry(self.root).grid(row=0, column=1, columnspan=2)
Label(self.root, text="密码").grid(row=1, column=0)
Entry(self.root, show="*").grid(row=1, column=1, columnspan=2)
Button(self.root, text="登陆").grid(row=2, column=1)
Button(self.root, text="注册", command=self.bf_goRegister).grid(row=2, column=2)
self.root.mainloop()
class RegisterPage(object):
def bf_goLogin(self):
self.goLogin()
def __init__(self, goLogin):
self.goLogin = goLogin
self.root = Tk()
Label(self.root, text="用户").grid(row=0, column=0)
Entry(self.root).grid(row=0, column=1, columnspan=2)
Label(self.root, text="密码").grid(row=1, column=0)
Entry(self.root, show="*").grid(row=1, column=1, columnspan=2)
Label(self.root, text="确认").grid(row=2, column=0)
Entry(self.root, show="*").grid(row=2, column=1, columnspan=2)
Button(self.root, text="注册").grid(row=3, column=1)
Button(self.root, text="返回", command=self.bf_goLogin).grid(row=3, column=2)
self.root.mainloop()
if __name__ == '__main__':
root = Tk()
LoginPage(None)
root.mainloop()
```
在这个示例中,LoginPage和RegisterPage分别表示登陆界面和注册界面。在LoginPage中,点击"注册"按钮会调用`bf_goRegister`方法,然后创建一个RegisterPage实例。在RegisterPage中,点击"返回"按钮会调用`bf_goLogin`方法,然后销毁当前的RegisterPage实例,回到LoginPage界面。通过这种方式,可以实现多个界面之间的切换。
#### 引用[.reference_title]
- *1* *3* [python GUI tkinter 的页面转换方法](https://blog.csdn.net/qq_28969139/article/details/89855134)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [tkinter创建GUI实现多界面切换以及python中处理多个异常不退出程序](https://blog.csdn.net/m0_47732121/article/details/123977459)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文