Я tkintering с tkinter :) и пытаюсь центрировать таблицу "StackQuestion".
Я не знаю, каков вариант для центрирования по горизонтали или по вертикали стола внутри приемного контейнера.
Первый класс Class StackQuestion определяет, как работают общие окна и как переключаться с контейнера на контейнер. Во-вторых, определите таблицу и ее содержание.
Я попытался добавить разные цвета в разные контейнеры, чтобы проверить, какой контейнер активен, и попытаться центрировать все, что находится внутри, без особого успеха.
edit: чтобы здесь не было много кода, я удалил все остальные классы и продублировал "Test" in "для F in (Test, Test):", чтобы код работал на вашем компьютере.

#utf8
#python3
import tkinter as tk
from tkinter import *
from tkinter import ttk
class StackQuestion(tk.Tk):
def __init__(self, *args, **kwargs):
tk.Tk.__init__(self, *args, **kwargs)
container = ttk.Frame(self)
container.grid()
#windows resize management
container.grid_rowconfigure(0, weight=1)
container.grid_columnconfigure(0, weight=1)
self.frames = {}
for F in (Test, Test):
frame = F(container, self)
self.frames[F] = frame
frame.grid(row=1, column=1, sticky='nsew')
self.show_frame(Test)
def show_frame(self, cont):
frame = self.frames[cont]
frame.tkraise()
class Test(tk.Frame):
def __init__(self, parent, controller):
tk.Frame.__init__(self, parent)
label = tk.Label(self, text = 'StackQuestion')
label.grid(row=0, column=0, columnspan=2)
questions = ['Question 1', 'Question 2' , 'Question 3']
row_number = 1
column_number = 0
Tree = ttk.Treeview(self, show ='headings')
Tree['columns'] = ('Author', 'Subject', 'Date', 'Question')
Tree.heading('Author', text = 'Author')
Tree.heading('Subject', text = 'Subject')
Tree.heading('Date', text = 'Date')
Tree.heading('Question', text = 'Question')
for value in questions :
Tree.insert('', 'end', value, text = value)
Tree.set(value, 'Author', value)
Tree.grid()
app = StackQuestion()
app.geometry('1080x700')
app.configure(background='grey')
app.mainloop()