将同一网格行中的各种 LabelFrame 小部件放在一起

Getting various LabelFrame widgets in th same grid's row together

我一直在为我的应用程序制作欢迎 window,但我似乎无法在 window 上将最后一行的 LabelFrames 放在一起。我尝试通过添加 padx 和消除 columnspan 来配置 column weight,但似乎没有任何效果,并且 LabelFrame 小部件保持相同的距离。

Framegrid 包装,在最后 row 放置了 LabelFrames

这是我的代码:

import tkinter as tk
import tkinter.font as tkf

    class ventana_inicio(tk.Frame):
        def __init__(self,parent,controller,dbs):
        tk.Frame.__init__(self,controller)
        self.pack()
        self.controller=controller
        self.db_state=dbs

        lblmuc=tk.Label(self,text="MAMOOTS ULTIMATE CLUB",font=tkf.Font(family="Arial Black",size="20"))
        lbl98=tk.Label(self,text="Alive since 1998",font=tkf.Font(family="Segoe Script",slant="italic"))
        lblbla=tk.Label(self,text="Version 1.0 // 2020",font=tkf.Font(family="Arial Black",size="8"),width=20)
    
        lbfDB=tk.LabelFrame(self,text="SQL")
        btnIDB=tk.Button(lbfDB,text="Iniciar")
        btnCDB=tk.Button(lbfDB,text="Cargar")
        btnBDB=tk.Button(lbfDB,text="Borrar")

        lbfinf=tk.LabelFrame(self,text="Aplicación")
        btnIAP=tk.Button(lbfinf,text="Iniciar")
        btnLAP=tk.Button(lbfinf,text="Ver Log")

        lfbst=tk.LabelFrame(self,text="Estado")
        btnst=tk.Button(lfbst,text="Revisar")

        lblmuc.grid(row=0,column=0,columnspan=6)
        lbl98.grid(row=1,column=0,columnspan=6)
        lblbla.grid(row=2,column=0,columnspan=6)
        lbfDB.grid(row=3,column=0,columnspan=3,padx=5)
        lbfinf.grid(row=3,column=3,columnspan=2,padx=5)
        lfbst.grid(row=3,column=5,padx=5)

        btnIDB.grid(row=0,column=0)
        btnCDB.grid(row=0,column=1)
        btnBDB.grid(row=0,column=2)

        btnIAP.grid(row=0,column=0)
        btnLAP.grid(row=0,column=1)

        btnst.grid(row=0,column=0)

您需要使用 sticky 属性来告诉每个标签框“粘贴”到给定的 space 边缘。

lbfDB.grid(row=3,column=0,columnspan=3,padx=sticky="ew")
lbfinf.grid(row=3,column=3,columnspan=2,padx=5, sticky="ew")
lfbst.grid(row=3,column=5,padx=5, sticky="ew")