Ausrichten von Frames in Tkinter Python, (customtkinter)
Posted: 17 Jan 2025, 06:13
Ich erstelle eine App in Python mit der Customtkinter-Bibliothek. Ich verwende den Grid()-Widget-Manager. Bisher habe ich nur ein paar Rahmen als Grundlayout, kann diese aber nicht richtig ausrichten.
Das Problem ist, dass ich den blauen Rahmen haben möchte (stats_frame), um doppelt so groß zu sein wie die weißen und schwarzen Rahmen darunter (control_frame und current_result_frame).
So sieht es aus:
https://i.sstatic.net/9VUQRAKN.png
Dies ist der Code:
Ich habe versucht, das Gewicht der Reihe anzupassen, mehr Reihen zu haben und die Reihenspanne des Rahmens zu vergrößern, aber nichts hat funktioniert.
Macht das bitte jemand? Wissen Sie, wie Sie das beheben können?
Das Problem ist, dass ich den blauen Rahmen haben möchte (stats_frame), um doppelt so groß zu sein wie die weißen und schwarzen Rahmen darunter (control_frame und current_result_frame).
So sieht es aus:
https://i.sstatic.net/9VUQRAKN.png
Dies ist der Code:
Code: Select all
import customtkinter as ctk
class Neural_Net_GUI():
def __init__(self):
# Defining the window:
self.window = ctk.CTk()
self.window.geometry('1200x800')
self.window.columnconfigure(0, weight=3)
self.window.columnconfigure(1, weight=1)
self.window.rowconfigure(0, weight=1)
self.window.rowconfigure(1, weight=10)
# self.window.rowconfigure((2, 3, 4), weight=1)
# self.window.rowconfigure(1, weight=1)
# self.window.rowconfigure((2, 3), weight=1)
# Sample frames:
self.input_frame = ctk.CTkFrame(master=self.window, fg_color='green')
self.input_frame.grid(row=0, column=0, columnspan=2, sticky='swne')
self.graph_frame = ctk.CTkFrame(master=self.window, fg_color='red')
self.graph_frame.grid(row=1, column=0, sticky='swne')
self.left_frame = ctk.CTkFrame(master=self.window)
self.left_frame.columnconfigure(0, weight=1)
# self.left_frame.rowconfigure(0, weight=1)
self.left_frame.rowconfigure(0, weight=10)
self.left_frame.rowconfigure(1, weight=1)
self.left_frame.rowconfigure(2, weight=1)
self.stats_frame = ctk.CTkFrame(master=self.left_frame, fg_color='blue')
self.stats_frame.grid(row=0, column=0, sticky='nesw')
self.control_frame = ctk.CTkFrame(master=self.left_frame, fg_color='black')
self.control_frame.grid(row=1, column=0, sticky='nesw')
self.current_result_frame = ctk.CTkFrame(master=self.left_frame, fg_color='white')
self.current_result_frame.grid(row=2, column=0, sticky='nesw')
self.left_frame.grid(row=1, column=1, sticky='swne')
N = Neural_Net_GUI()
N.window.mainloop()
Macht das bitte jemand? Wissen Sie, wie Sie das beheben können?