使用pycharm写一个能直接运行的python程序,用tkinter库,实现一个登录界面,并且成功登录后显示六个按钮,点击按钮能运行对应按钮指定路径的其他python程序
时间: 2024-05-01 21:20:09 浏览: 17
好的,以下是一个简单的实现:
```python
import tkinter as tk
import os
class LoginWindow:
def __init__(self, master):
self.master = master
master.title("登录")
self.label_username = tk.Label(master, text="用户名")
self.label_password = tk.Label(master, text="密码")
self.entry_username = tk.Entry(master)
self.entry_password = tk.Entry(master, show="*")
self.label_username.pack()
self.entry_username.pack()
self.label_password.pack()
self.entry_password.pack()
self.btn_login = tk.Button(master, text="登录", command=self.login)
self.btn_login.pack()
def login(self):
username = self.entry_username.get()
password = self.entry_password.get()
# 检查用户名和密码是否正确
if username == "admin" and password == "123456":
self.master.destroy() # 关闭登录窗口
AppWindow() # 打开主程序窗口
else:
tk.messagebox.showerror("错误", "用户名或密码错误")
class AppWindow:
def __init__(self):
self.master = tk.Tk()
self.master.title("主程序")
# 六个按钮,每个按钮对应一个Python程序的路径
self.btn1 = tk.Button(self.master, text="程序1", command=lambda: os.system("python path/to/program1.py"))
self.btn2 = tk.Button(self.master, text="程序2", command=lambda: os.system("python path/to/program2.py"))
self.btn3 = tk.Button(self.master, text="程序3", command=lambda: os.system("python path/to/program3.py"))
self.btn4 = tk.Button(self.master, text="程序4", command=lambda: os.system("python path/to/program4.py"))
self.btn5 = tk.Button(self.master, text="程序5", command=lambda: os.system("python path/to/program5.py"))
self.btn6 = tk.Button(self.master, text="程序6", command=lambda: os.system("python path/to/program6.py"))
self.btn1.pack()
self.btn2.pack()
self.btn3.pack()
self.btn4.pack()
self.btn5.pack()
self.btn6.pack()
self.master.mainloop()
if __name__ == '__main__':
root = tk.Tk()
login_window = LoginWindow(root)
root.mainloop()
```
这个程序首先会弹出一个登录窗口,要求用户输入用户名和密码。如果用户名和密码正确,主程序窗口就会打开,里面有六个按钮,每个按钮对应一个Python程序的路径。用户可以点击按钮来运行对应的程序。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)