2014-11-25 1162 views
0

我正在创建一个使用网格管理器的框架。我有一个标签小部件。我希望标签小部件能够填充到它所在的框架中。但是,框架会将其自身尺寸扩大到标签小部件。我曾尝试使用方法grid_propagate(False)。但它似乎并没有工作。我不知道这是否是我使用它的方式,但有人可以帮我弄清楚为什么它不起作用?在Python中使用grid_propagate(False)Tkinter

def fields(self): 
    frame_row = 0 
    frame_column = 0 
    row_count = 0 
    color = "red" 

    for i in range(50): 
     self.bfr2.columnconfigure(frame_column, pad=10) 
     self.bfr2.rowconfigure(frame_row, pad=10) 

     self.frame = Frame(self.bfr2, bg="grey", width=229, height=120) 
     self.frame.grid(row=frame_row, column=frame_column) 
     self.frame.grid_propagate(False) #This is where it should prevent the Frame from re sizing but it does not. 

     self.sum = Label(self.frame, bg="green", text="This is a summary of a note") 
     self.sum.pack(side=TOP, fill=BOTH) 

     frame_column = frame_column + 1 
     row_count = row_count + 1 

     if row_count == 2: 
      frame_row = frame_row + 1 
      frame_column = 0 
      row_count = 0 

      if color == "red": 
       color = "green" 
      else: 
       color = "red" 

     if color == "red": 
      color = "green" 
     else: 
      color = "red" 

回答

2

要调用grid_propagate但是如果使用pack()把小工具在里面。试试做

self.frame.pack_propagate(False) 
相关问题