laiyuanjie 发表于 2024-4-12 14:17:36

我要让它紧贴着最上面来显示,怎么弄

我这个是左右两边两个FRAME,左边的是一个LabelFrame,在l_frame容器里面,想贴着上面显示,得怎么弄,右边的区域还有好几个treeview,,是在一个叫做r_frame上的,,,我试了height=的设置,,没有用,,下面是代码
    def road_table_label(self):
      self.service_labelframe = tk.LabelFrame(self.l_frame, text="载入表格的区域")

      self.human_sheet_botton = tk.Button(self.service_labelframe, text="人事部加油表格",command=self.get_human_sheet_path)
      self.human_sheet_botton.grid(row=0,column=0,pady=10,padx=8)

      self.split_line_label = tk.Label(self.service_labelframe, text="-"*10, font=20)
      self.split_line_label.grid(row=1, column=0, pady=5, padx=5)

      self.object_sheet_botton = tk.Button(self.service_labelframe, text="核对方加油表格",command=self.get_object_sheet_path)
      self.object_sheet_botton.grid(row=2,column=0,pady=10,padx=8)

      self.split_line_label_2 = tk.Label(self.service_labelframe, font=20)
      self.split_line_label_2.grid(row=3, column=0, pady=5, padx=5)

FishC 发表于 2024-4-12 14:17:50

要让LabelFrame紧贴着最上面来显示,可以使用grid布局管理器,并将其放置在l_frame的第一行。

将以下代码添加到你的程序中:

self.service_labelframe.grid(row=0, column=0, sticky='n')

这样,service_labelframe就会紧贴着l_frame的最上方显示了。

如果你还想让右边的r_frame紧贴着最上面显示,可以使用与上面相同的方法。假设你已经在程序中创建了r_frame,那么你可以添加以下代码:

self.r_frame.grid(row=0, column=1, sticky='n')

记得在合适的位置导入tkinter模块:

import tkinter as tk

这样,左边的l_frame和右边的r_frame都会紧贴着最上面显示了。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

laiyuanjie 发表于 2024-4-12 14:23:32

FishC 发表于 2024-4-12 14:17
要让LabelFrame紧贴着最上面来显示,可以使用grid布局管理器,并将其放置在l_frame的第一行。

将以下代 ...

解决

FishC 发表于 2024-4-12 14:23:43

laiyuanjie 发表于 2024-04-12 14:23
解决

很高兴能够帮到你!若有任何其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: 我要让它紧贴着最上面来显示,怎么弄