【问题标题】:Grid layout with Text widgets带有文本小部件的网格布局
【发布时间】:2020-09-13 15:27:27
【问题描述】:

我正在尝试使用网格布局以 3:1 的宽度比例并排放置两个 Text 小部件:

root = tk.Tk()

t1 = tk.Text(root)
t2 = tk.Text(root)

t1.grid(row=0, column=0, sticky=tk.E+tk.W)
t2.grid(row=0, column=1, sticky=tk.E+tk.W)

root.grid_columnconfigure(0, weight=3)
root.grid_columnconfigure(1, weight=1)

root.mainloop()

启动应用程序后,小部件的宽度似乎是 1:1。缩小窗口,使第一个小部件 (t1) 变窄。权重值表明,应该会发生相反的情况(t2 越来越窄,直到达到 75:25)。相反,t1 变得非常狭窄,而 t2 使用了大部分可用空间。 Example resize

我做错了什么?

【问题讨论】:

    标签: python-3.x tkinter


    【解决方案1】:

    权重只影响网格分配额外空间的方式。您要求两个小部件以相同的大小开始,并且您让文本小部件控制 UI 的大小,因此不会有额外的空间。因此,weight 对初始布局没有影响。

    除了设置权重之外,您还需要小部件以您想要的比例开始:

    t1 = tk.Text(root, width=45)
    t2 = tk.Text(root, width=15)
    

    【讨论】:

      猜你喜欢
      • 2020-05-28
      • 1970-01-01
      • 2015-08-11
      • 1970-01-01
      • 2018-04-28
      • 1970-01-01
      • 2020-10-18
      • 2018-07-28
      • 2014-06-02
      相关资源
      最近更新 更多