You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python Tkinter调整窗口大小时如何保持两个文本框尺寸一致

问题根源

你的代码中仅对group1容器的第0列设置了weight=1的缩放权重,第1列的权重默认值为0。窗口缩放时,只有权重非0的列会分配到额外的可用空间,因此放在第0列的第一个文本框会随窗口拉伸变宽,第1列的第二个文本框始终保持初始宽度,最终出现尺寸不一致的情况。

修复方案

给group1的两列设置完全相等的缩放权重,两列就会始终平分容器的水平可用空间,保证两个文本框宽度永远一致。
只需要在原有代码的group1.columnconfigure(0, weight=1)这一行下方,新增一行配置:

group1.columnconfigure(1, weight=1)

如果需要两个文本框之间保留合适的间距,可以在两个文本框的grid布局参数中增加水平边距配置,比如给第一个文本框加padx=(0,5),第二个加padx=(5,0),避免两个控件贴在一起。

修正后完整可运行代码
# coding: utf-8

try:
    import tkinter as tk
    from tkinter import scrolledtext
except: # Python2兼容
    import Tkinter as tk
    from Tkinter import scrolledtext

def main():
    master_window = tk.Tk()

    # 顶部按钮父容器
    buttons_frame = tk.Frame(master_window)
    buttons_frame.grid(row=0, column=0, sticky=tk.W+tk.E)    

    btn_Image = tk.Button(buttons_frame, text='Image')
    btn_Image.grid(row=0, column=0, padx=(10), pady=10)

    btn_File = tk.Button(buttons_frame, text='File')
    btn_File.grid(row=0, column=1, padx=(10), pady=10)

    btn_Folder = tk.Button(buttons_frame, text='Folder')
    btn_Folder.grid(row=0, column=2, padx=(10), pady=10)

    # 文本框分组容器
    group1 = tk.LabelFrame(master_window, text="Text Box", padx=5, pady=5)
    group1.grid(row=1, column=0, columnspan=3, padx=10, pady=10, sticky=tk.E+tk.W+tk.N+tk.S)

    master_window.columnconfigure(0, weight=1)
    master_window.rowconfigure(1, weight=1)

    group1.rowconfigure(0, weight=1)
    group1.columnconfigure(0, weight=1)
    # 新增第1列权重配置,保证两列等比例缩放
    group1.columnconfigure(1, weight=1)

    # 创建两个可滚动文本框
    txtbox = scrolledtext.ScrolledText(group1, width=40, height=10)
    txtbox.grid(row=0, column=0, padx=(0,5), sticky=tk.E+tk.W+tk.N+tk.S)
    txtbox2 = scrolledtext.ScrolledText(group1, width=40, height=10)
    txtbox2.grid(row=0, column=1, padx=(5,0), sticky=tk.E+tk.W+tk.N+tk.S)

    master_window.mainloop()

if __name__ == '__main__':
    main()

修改后无论怎么拖动调整窗口大小,两个文本框都会始终保持相同尺寸,同步缩放。

内容的提问来源于stack exchange,提问作者Geobongpapa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 19:54:23