2014-11-25 5 views
0

그리드 관리자를 사용하는 프레임을 생성 중입니다. 그리고 라벨 위젯을 가지고 있습니다. 라벨 위젯이 들어있는 프레임을 채우고 싶습니다. 대신 프레임이 라벨 위젯에 맞게 크기가 조정됩니다. grid_propagate (False) 메서드를 사용해 보았습니다. 그러나 그것은 작동하지 않는 것 같습니다. 내가 사용하는 방법인지는 모르겠지만 누군가가 왜 작동하지 않는지 알아낼 수 있습니까?Python Tkinter에서 grid_propagate (False) 사용하기

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) 
관련 문제