Tkinter Pack() 设置扩展比例

Tkinter Pack() setting a ratio for expanding

我正在使用 tkinter pack 方法将两个框架放在 window 中。 我需要按 2:1

的比例垂直扩展顶部框架和 Bot 框架

我知道 .expand() 在网格管理器中有一个名为 rowconfigure() 的选项用于此目的。 但是,我特别想知道这是否可以通过仅使用 Pack()

来实现
import tkinter as tk
from tkinter import ttk

window = tk.Tk()
window.title("Pack expand ratio - tkinter pack vs grid")
window.geometry("800x600")
window.minsize(200, 200)   

frm_Top = tk.Frame(master=window, width = 600,bg= '#beb7e2', relief=tk.GROOVE, borderwidth=2)
frm_Top.pack(side =tk.TOP, fill=tk.BOTH, expand=True ) 
frm_Bot = tk.Frame(master=window, width = 600, bg= '#abbdee',relief=tk.GROOVE, borderwidth=2)
frm_Bot.pack(side =tk.TOP, fill=tk.BOTH, expand=True)

btn_search = ttk.Button(master=frm_Top, text="Search",width=15)
btn_quit = ttk.Button(master=frm_Bot, text="Quit", width = 15)
btn_search.pack(side =tk.TOP, ipady=20, expand=True, anchor='ne')
btn_quit.pack(side =tk.TOP, ipady=20 ,expand=False, anchor='ne')

window.mainloop()

即。我试图通过使用以下类似包 ()

来获得相同的结果
#Frm_Top & Frm_Bot vertically in a ratio of 2:1
#ie equivalent method for using grid weights
window.rowconfigure(0, weight=2)
window.rowconfigure(1, weight=1)

I would like to know in particular whether this can be achieved by using only Pack()

不,没有与 pack 等效的功能。 packgrid 解决了两种不同类型的问题,彼此之间没有 100% 的特征对等性。