[英]how to Divide class based frames in tkinter frames into different python files
我有一個 tkinter 應用程序,它分為許多類(tkinter 中的框架),該程序已變成 1000 多行,現在我想將其分成不同的文件,任何人都可以指導我如何實現這一點。
我的代碼就像
class tkinterApp(tk.Tk): #this is the class which make navigation pages possible
def __init__(self, *args, **kwargs):
tk.Tk.__init__(self, *args, **kwargs)
container = tk.Frame(self)
container.pack(side="top", fill="both", expand=True)
self.frames = {}
self.attributes('-fullscreen', True)
for F in (StartPage, connect_page, login_page, signup_page, dashboard_page,trip_page,destination_reached_page):
frame = F(container, self)
self.frames[F] = frame
frame.grid(row=0, column=0, sticky="nsew")
self.show_frame(StartPage)
def show_frame(self, cont):
frame = self.frames[cont]
frame.tkraise()
class StartPage(tk.Frame):
def __init__(self, parent, controller):
tk.Frame.__init__(self, parent)
#some code .....
class connect_page(tk.Frame):
def __init__(self, parent, controller):
tk.Frame.__init__(self, parent)
#some page...
#more classes like this ........
我想將頁面划分為不同的 python 文件和不同文件中的主類tkinterApp
如果如何?
只需將類及其需要的所有導入剪切/粘貼到另一個文件中,然后將其導入。
# start_page.py
import tkinter as tk
class StartPage(tk.Frame):
def __init__(self, parent, controller):
tk.Frame.__init__(self, parent)
#some code .....
然后在您的主文件中:
#!/usr/bin/env python3
# main_program.py
from start_page import StartPage
# rest of your code
附帶說明一下,1000 多行並不是那么大,也很常見。 您可能需要閱讀 IDE 的代碼導航功能。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.