在tkinter的界面设计中,使用模板继承,这样继承过来的代码具有模板的特性。这样做的主要目的是想在基础模板中调整字体、字号,前景颜色,背景颜色等,使继承于该基础模板的多个其他界面设计文件统一具有基础模板的设定,从而达到界面风格统一的效果。
项目文件夹
project # 项目文件夹
login.py # 主程序文件
database.py # 操作数据库的文件
gbase.db # 数据库文件
ui # 程序界面文件夹
__ini__.py # 空文件,使该文件夹成为包文件
ui_base.py # 基础界面文件,设定字体、字号等样式
ui_login.py # 登录窗口的界面设计文件,继承自ui_base.py
ui_tools.py # 一些界面设计的工具模块
基础模板 ui_base.py
import tkinter as tk
from tkinter import ttk
class BaseWindow(tk.Tk):
"""创建基础窗口,设置常用参数"""
def __init__(self):
super().__init__()
self.font_name = '微软雅黑'
self.font_size = 14
self.font = (self.font_name, self.font_size)
self.option_add('*Font', self.font)
ttk.Style().configure(".", font=self.font)
登录界面继承于该模板 ui_login.py
import tkinter as tk
from tkinter import ttk
from . import ui_base # 使用相对导入,使不同包的 import 能找到该模块
from . import ui_tools
class