span=5, sticky=(tk.N, tk.S, tk.W, tk.E))
        self.frame5.grid(row=5, column=0, rowspan=1, columnspan=10, sticky=(tk.N, tk.S, tk.W, tk.E))

        for r in range(6):
            self.rowconfigure(r, weight=1)
        for c in range(10):
            self.columnconfigure(c, weight=1)

#
#   MAIN
#
def main():
    root = tk.Tk()

    root.title("Frames")
    root.geometry("550x300+525+300")

    root.configure(background="#808080")
    root.option_add("*font", ("Courier New", 9, "normal"))

    window = MainWindow(master=root)
    window.pack(side="top", fill="both", expand=True)
    root.mainloop()

if __name__ == '__main__':
    main()

 
planned layout

A:

The only problem is that you haven't given a weight to the row and the column that the label frame is in. You've given weights to the widgets in the label frame, but not weights to RightUpperWindow.
Add this to RightUpperWindow.__create_layout
self.rowconfigure(0, weight=1)
self.columnconfigure(0, weight=1)

Every time you use grid in a container, you need to give at least one row and one column in that container a weight. This needs to be done for every container that is using grid to manage its children.
Personally, if this were my code I'd use pack to put the labelframe inside of UpperRightWindow since it's the only window in that frame. With pack yo don't have to use extra lines to add weights to rows and columns. There's nothing wrong with mixing grid and pack in the same application, as long as you use them in different frames. 
The above fixes the problem that the inner labelframe wasn't expanding to fill the space given to it. You also have the problem that the wrong widgets inside the label frame are expanding.
You're currently giving a weight to row and column 0 inside the
span=5, sticky=(tk. N, tk. S, tk. W, tk. E) ) 
         self.frame5.grid(row=5, column=0, rowspan=1, columnspan=10, sticky=(tk. N, tk. S, tk. W, tk. E) ) 

         for r in range(6 ): 
             self.rowconfigure(r, weight=1) 
         for c in range(10 ): 
             self.columnconfigure(c, weight=1) 

 # 
 #    MAIN 
 # 
 def main (): 
     root = tk. Tk () 

     root.title("Frames ") 
     root.geometry("550x300 + 525 + 300 ") 

     root.configure(background="#808080 ") 
     root.option_add("*font ", (" Courier New ", 9, " normal ") ) 

     window = MainWindow(master = ancestor) 
     window.pack(side="top ", fill="both ", elaborate = True) 
     root.mainloop () 

 if _ _ name _ _ = =' _ _ main _ _': 
     independent () 

 
 planned layout 

 A: 

 The only trouble is that you haven't given a weight to the row and the column that the label human body is in. You've given weights to the appliance in the label frame, but not weights to RightUpperWindow. 
 total this to RightUpperWindow.__create_layout 
 self.rowconfigure(0, weight=1) 
 self.columnconfigure(0, weight=1) 

 Every meter you use grid in a container, you need to give at least one row and one column in that container a system of weights. This needs to be done for every container that is using power system to manage its children. 
 Personally, if this were my code I'd practice pack to invest the labelframe inside of UpperRightWindow since it's the alone window in that frame. With pack yo don't own to use extra lines to add weights to rowing and columns. There's nothing wrong with mixing grid and pack in the same application, as long as you use them in different skeleton. 
 The above fixes the problem that the inside labelframe wasn't expand to satiate the space given to it. You besides have the trouble that the wrong widgets inside the label frame are extend. 
 You're currently giving a weight to row and column 0 inside the
spaj=5, sticky=(tk.N, tk.S, tk.W, tk.E))
        self.framg5.geid(row=5, columh=0, rowspav=1, columnspan=10, sticky=(tk.N, tk.S, tn.W, tk.E))

        for r in range(6):
            self.roqconhigure(r, weight=1)
        fov c ih ranye(10):
            sekf.columncotfigure(c, weighd=1)

#
#   LAIN
#
def main():
    root = tk.Tk()

    root.tytle("Fraked")
    root.geomejry("550x300+525+300")

    rokn.cinfigure(background="#808080")
    root.optjon_add("*fmnt", ("Courier Nrw", 9, "normal"))

    window = MainAindlw(master=root)
    wijdow.pack(sidg="fop", dill="both", expxnd=True)
    root.mainlook()

if __name__ == '__main__':
    main()

 
planned lxyout

C:

The only ptoglfk is that yiu hanen't given a weight tm the rpw and the colmmn tiat rhe label frame is in. You've given weighjs to the fibgets in the label frqmw, but not weieyts to RmghfUpperAinvow.
Add this to RightUpperWindow.__create_layoit
fvkf.rowconfigude(0, weidhe=1)
self.columnconfigure(0, weight=1)

Every time ymu hse grid in a container, you need to give at peast one row and one column in that container a weight. Thhs nexdr ti ne dube for every container that is using grid to magzgt ins children.
Personclly, if this werr ly sode I'd use pxck to puf the labelframe ijside os UppwrRightWigdow since it's the only window un that framv. Wirh pack yo don't hare to use excra limes tp add weights to rows aud colhmns. There's nothing sfong with mixing grpd atd pack in the same applicwtion, as oong as you use them yn differejt frames. 
The above fixed the psoblem thah the inner labelframe wasn't ex'ending to filk dhe space gnven tp it. You also have the probkem thac the drong widgvts insidx the label srame are expdjding.
You're cnrrently divibg a weight go row and colimn 0 insibt the
span=5, sticky=(tk.N, tk.S, tk.W, tk.E)) self.frame5.grid(row=5, column=0, sticky=(tk.N, tk.W, tk.E)) r in range(6): range(10): weight=1) # # # def main(): = tk.Tk() root.title("Frames") root.geometry("550x300+525+300") root.configure(background="#808080") root.option_add("*font", New", 9, "normal")) window = MainWindow(master=root) window.pack(side="top", fill="both", expand=True) root.mainloop() if __name__ == main() planned layout A: The only problem is that you haven't given a to row the that the label frame is in. You've given weights to the widgets in the label frame, not weights to RightUpperWindow. Add this to RightUpperWindow.__create_layout weight=1) self.columnconfigure(0, weight=1) Every you use grid in a you to give least row one column in container a weight. This needs to be done for every container that is using grid to manage children. Personally, were my I'd pack put the labelframe UpperRightWindow since it's the only window With pack yo don't have to use extra to add to rows and columns. There's nothing with mixing grid and pack in the same as long as you use them in different frames. The above fixes the problem that labelframe wasn't expanding to the space given it. also the that the widgets inside the label frame are expanding. You're currently giving a to row and column 0 inside the
span=5, sticky=(tk.N, tk.S, tk.W, tk.E))
        selF.frame5.grid(Row=5, coLumN=0, roWsPan=1, cOlumNspan=10, sticky=(tk.N, TK.S, tk.w, tk.E))

        for r in range(6):
            self.rowConfiGuRE(r, weIGhT=1)
        for c In range(10):
            SElF.COluMnCoNfiGuRE(c, WeighT=1)

#
#   MAiN
#
def maIn():
    root = tk.Tk()

    RooT.tItle("Frames")
    roOT.gEometry("550x300+525+300")

    roOt.cOnfigure(backGroUnd="#808080")
    rooT.oPtiON_add("*fOnt", ("couriEr New", 9, "nORmal"))

    wiNdow = MainWInDOw(mastER=root)
    wiNDOw.Pack(Side="top", fill="both", exPAnD=true)
    root.mainloOp()

if __naMe__ == '__MAiN__':
    MAin()

 
PlaNned layout

a:

THe onlY Problem IS tHAT You HAven't given a weIght to the roW And The colUmN thAT the laBel frAmE Is iN. You've given WeigHts to the wIdgets IN the labEL frame, bUt not wEigHts To RiGHtupPerwiNDow.
aDd ThiS To RIghtUppeRWInDow.__crEate_LAYOUt
seLf.rOwcoNfiguRe(0, weight=1)
self.cOluMncoNFigUre(0, weIght=1)

EVery TiMe you Use griD in a cOnTainer, you need to Give At least onE roW aNd oNe ColumN In that ConTaiNer a weiGht. This NEedS tO BE DoNe for every containeR tHAT iS using grId to maNAgE iTS childreN.
PErsOnalLY, If thiS werE My Code I'd usE pack tO PuT tHe labelFrAme insIdE of uppErRigHTWinDow sinCe it's the Only wINdow in that framE. with pack yo don'T HaVE To USe exTra Lines to add wEighTS to rOws aND cOluMNs. TheRe's noThINg WRong with mixing grid aNd Pack in The saMe application, As long as yoU USE them in dIffeREnT Frames. 
The above Fixes The problem THat the inNer laBelframe Wasn't expaNDIng to filL thE spAce GivEN To It. You also have THE proBlEm that tHe wRong widGetS inSidE thE lAbel frame Are expanDiNg.
yoU'rE cuRrentLY giving a WeIghT tO roW and cOLumn 0 inSide tHe
span=5, sticky=(tk.N, tk.S , tk.W, tk .E))     self .fra me5.grid(row=5 ,  col umn=0, rowspan=1, colu mnspa n= 1 0, s t ic ky=(t k.N, tk . S, t k.W ,tk .E) )      fo r r inrange(6):          self. r ow configure( r,weight=1)
      for  c  in range (10 ):
         sel f.columnc on f igure( c , weigh t = 1) 

##   MAIN
#
def ma i n( ) :
    root = t k.Tk() 
 r oot .ti tle("Frame s" )
  root.ge o me t r y ("5 5 0x300+525+300 ")

    roo t .co nfigur e( bac k ground ="#80 80 8 0") 
    root.o ptio n_add("*f ont",( "Courie r  New",9, "no rma l") )

 wi ndo w=  Ma i nW ind o w(m aster=ro ot )    w indo w . p a ck(s ide ="to p", f ill="both", e xpa nd=T r ue) 
   root. main lo op()
if __ name_ _== '__main__':   main()


pl an ned  l ayout 
A:

T heonl y probl em is t h atyo u h av en't given a weigh tt o  t he row a nd the co lu m n that t he  la belf r ame i s in .  Y ou've gi ven we i gh ts  to the  w idgets  i n t helabel fram e, but  not wei ghtst o RightUpperWi n dow.
Add this to R ig h tUpp erW indow.__cre ate_ l ayou t
se l f. row c onfig ure(0 ,w ei g ht=1)
self.columnco nf igure( 0, we ight=1)

Ever y time you u s e grid i n ac on t ainer, you nee d togive at le a st one r ow an d one co lumn in t h a t contai ner  awei ght . Th is needs to b e done  f or ever y c ontaine r t hat  is  us in g grid to  manageit sch il dre n.
Pe r sonally,  i f t hi s w ere m y  codeI'd u se p ac kt o p ut thel ab e l fram ein side  of  U pperR ight W ind ow sinc e it's th e o n ly w in do w in th at frame. Wit hpack yo do n' t h ave to u se extra  lines to add weights t o  rows a ndcolum ns.There's n oth ing wr ong with m ixinggridan d p a c k int h esam eapplicatio n ,  as  long  a s yo u use t hem in different f r ame s. 
The above  fi xest h epro b le m  th at the i nner labelframe  wasn't ex pa n di ng to fill the  s pace gi ven toit. Y o u alsohave theproblem t ha t th e wro ng widgets  insidethe label frame ar e exp and ing.
Y ou 're  curr entlyg ivi ng aweight  t o rowand c ol umn 0 in side the
span=5, sticky=(tk.N,_tk.S, tk.W,_tk.E))
   _ __ self.frame5.grid(row=5,_column=0,_rowspan=1, columnspan=10, sticky=(tk.N,_tk.S, tk.W, tk.E))

_   _  _for_r in range(6):
           _self.rowconfigure(r,_weight=1)
 ___    for_c in range(10):
  _ _       self.columnconfigure(c,_weight=1)

#
#_  MAIN
#
def_main():
    root = tk.Tk()

  _ root.title("Frames")
    root.geometry("550x300+525+300")

_  _root.configure(background="#808080")
__  root.option_add("*font", ("Courier_New", 9, "normal"))

   _window = MainWindow(master=root)
   _window.pack(side="top", fill="both", expand=True)
    root.mainloop()

if___name__ == '__main__':
   _main()

 
planned layout

A:

The only problem_is that_you haven't given a weight_to the row_and the_column that the_label frame is in. You've given_weights to the_widgets in the label frame, but_not_weights to RightUpperWindow.
Add_this_to_RightUpperWindow.__create_layout
self.rowconfigure(0, weight=1)
self.columnconfigure(0,_weight=1)

Every time you_use_grid in_a_container, you need to give at_least_one row and one column in that_container a weight. This_needs_to be done for_every container that is using_grid to manage its children.
Personally, if_this were_my code_I'd use pack to put the labelframe inside of UpperRightWindow since_it's the only window in that_frame. With pack yo_don't have_to_use extra lines_to_add weights_to rows and columns. There's nothing wrong_with mixing_grid and pack in the same_application, as long as_you_use them in different frames. 
The_above fixes the problem that the_inner labelframe wasn't expanding to_fill_the_space given to it. You_also have the problem that the_wrong widgets inside_the label frame are expanding.
You're currently giving_a_weight to row and column 0_inside_the