Python tkinter 实现程序逻辑与界面设计分离
tkinter是Python自带的图形界面设计模块,以下内容初步实现了tkinter下程序逻辑与界面设计的分离。
项目文件夹:
project # 项目文件夹
login.py # 主程序文件
database.py # 操作数据库的文件
gbase.db # 数据库文件
ui # 程序界面文件夹
__ini__.py # 空文件,使该文件夹成为包文件
ui_login.py # 登录窗口的界面设计文件
ui_tools.py # 一些界面设计的工具模块
首先是界面设计文件 ui_login.py
import tkinter as tk
from tkinter import ttk
from . import ui_tools # 使用相对导入,使不同包的 import 能找到该模块
class Login(tk.Tk):
"""登录窗口UI"""
def __init__(self):
"""初始化"""
super().__init__() # 有点相当于tk.Tk()
self.welcome = tk.StringVar()
self.user = tk.StringVar()
self.pwd = tk.StringVar()
self.msg = tk.StringVar()
self.btn_ok = ttk.Button()
self.run()
def run(self):
self.title('系统登录')
self.resizable(False, False)
self.option_add('*Font', ('', 12))
ttk.Style(