You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

158 lines
4.6 KiB

import tkinter as tk
from sql import *
from tkinter import filedialog
import os
def main():
global root
global username_entry, password_entry
root = tk.Tk()
root.title("欢迎来到登陆界面")
root.geometry("300x200")
# 用户名和密码输入框
username_label = tk.Label(root, text="账号:")
username_label.pack()
username_entry = tk.Entry(root)
username_entry.pack()
password_label = tk.Label(root, text="密码:")
password_label.pack()
password_entry = tk.Entry(root, show="*")
password_entry.pack()
# 登录按钮
login_button = tk.Button(root, text="登陆", command=login_0)
login_button.pack()
register_button = tk.Button(root, text="注册", command=register)
register_button.pack()
root.mainloop()
def login_0():
entered_username = username_entry.get()
entered_password = password_entry.get()
# 这里可以添加用户名和密码的验证逻辑
if entered_username == query_user(entered_username).username and entered_password == query_user(entered_username).password:
login_1()
else:
erro_label = tk.Label(root, text="账号或密码错误")
erro_label.pack()
# 显示登陆成功后页面函数
def login_1():
root.destroy() # 关闭当前窗口
new_window = tk.Tk()
new_window.title("欢迎来到登陆成功后的界面")
new_window.geometry("300x200")
# 显示登陆成功的消息
new_label = tk.Label(new_window, text="登陆成功!")
new_label.pack()
button_frame = tk.Frame(new_window)
button_frame.pack()
upload_button = tk.Button(button_frame, text="上传文件", command=upload_file)
download_button = tk.Button(button_frame, text="下载文件", command=download_file)
delete_button = tk.Button(button_frame, text="删除文件", command=delete_file)
# 使用grid()布局管理器在button_frame内
upload_button.grid(row=4, column=0,padx=10, pady=10)
download_button.grid(row=4, column=3,padx=10, pady=10)
delete_button.grid(row=4, column=6,padx=10, pady=10)
# 退出按钮
exit_button = tk.Button(new_window, text="退出", command=new_window.destroy)
exit_button.pack()
new_window.mainloop()
def register():
root.destroy() # 关闭当前窗口
global register_view
global username_entry_1, password_entry_1
register_view = tk.Tk()
register_view.title("欢迎来到注册界面")
register_view.geometry("300x200")
username_label = tk.Label(register_view, text="用户名:")
username_label.pack()
username_entry_1 = tk.Entry(register_view)
username_entry_1.pack()
password_label = tk.Label(register_view, text="密码:")
password_label.pack()
password_entry_1 = tk.Entry(register_view)
password_entry_1.pack()
register_button = tk.Button(register_view, text="注册", command=register_0)
register_button.pack()
back_button = tk.Button(register_view, text="返回", command=register_1)
back_button.pack()
register_view.mainloop()
def register_0():
entered_username = username_entry_1.get()
entered_password = password_entry_1.get()
if query_user(entered_username) is not None:
erro_label = tk.Label(register_view, text="用户名已存在")
erro_label.pack()
else:
add_user(entered_username, entered_password)
ok_label = tk.Label(register_view, text="注册成功")
ok_label.pack()
def register_1():
register_view.destroy()
main()
def upload_file():
global selected_file_path
selected_file_path = filedialog.askopenfilename()
new_window = tk.Tk()
new_window.title("欢迎来到路径界面")
new_window.geometry("600x200")
# 更新界面,显示选定的文件路径
selected_file_label = tk.Label(new_window, text=f"选定文件: {selected_file_path}")
selected_file_label.pack()
# 添加保存路径按钮
save_button = tk.Button(new_window, text="保存路径", command=save_selected_path)
save_button.pack()
new_window.mainloop()
def save_selected_path():
file_path = "D:/Service/PyCharm 2024.1.1Pr/filesys/file_paths.txt"
# 检查目录是否存在,如果不存在则创建
directory = os.path.dirname(file_path)
if not os.path.exists(directory):
os.makedirs(directory)
if selected_file_path:
with open('file_paths.txt', 'a') as f:
f.write(selected_file_path)
print(f"文件路径已保存到file_paths.txt: {selected_file_path}")
else:
print("没有选择文件")
def download_file():
return None
def delete_file():
return None
main()