Dalam Tkinter, mengurus berbilang bingkai dalam satu GUI boleh menjadi senario biasa. Apabila membangunkan atur cara yang kompleks, anda mungkin perlu menukar antara bahagian program berdasarkan input pengguna. Berikut ialah pendekatan yang elegan untuk menyelesaikan tugas ini:
Daripada memusnahkan dan mencipta semula bingkai, Tkinter menawarkan penyelesaian yang lebih cekap: menyusun bingkai di atas satu sama lain. Dengan memanipulasi susunan susun, anda boleh membuat bingkai yang diingini kelihatan sambil mengekalkan yang lain tersembunyi.
Teknik ini berfungsi paling baik apabila semua bingkai mempunyai saiz yang sama. Walau bagaimanapun, dengan beberapa pelarasan, anda juga boleh memuatkan bingkai dengan saiz yang berbeza.
Pertimbangkan coretan kod berikut:
import tkinter as tk class SampleApp(tk.Tk): def __init__(self): # ... container = tk.Frame(self) container.pack(side="top", fill="both", expand=True) container.grid_rowconfigure(0, weight=1) container.grid_columnconfigure(0, weight=1) self.frames = {} for F in (StartPage, PageOne, PageTwo): page_name = F.__name__ frame = F(container, self) self.frames[page_name] = frame frame.grid(row=0, column=0, sticky="nsew") self.show_frame("StartPage") def show_frame(self, page_name): # ...
Di sini, kami mencipta SampleApp kelas yang menguruskan susunan bingkai. Kami mentakrifkan tiga kelas (StartPage, PageOne dan PageTwo) yang mewakili halaman berlainan program.
Kaedah show_frame() mengambil nama halaman sebagai hujah dan menaikkan bingkai yang sepadan ke bahagian atas susunan susun, menjadikannya kelihatan.
Teknik ini membolehkan penukaran lancar antara bingkai dengan hanya memanggil kaedah show_frame(). Ia menyediakan pendekatan berstruktur dan cekap untuk mengatur dan menavigasi GUI dalam aplikasi Tkinter.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengemudi dengan Cekap Antara Berbilang Bingkai dalam GUI Tkinter?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!