title: Python tkinter make row full weight on screen
body: <p>I am trying to make a gui full screen. Is working as full screen but i am not able to do the followings :</p>
  
  <p>1 - first row (row 0) to be scaled to max width of screen</p>
  
  <p>2 - on row 1, the first and last column have fixed width and stay on left and right of the screen (this is working)</p>
  
  <p>3 - the empty labels between buttons to be on the center</p>
  
  <p>4 - the 2 buttons to be center aligned  in left and right </p>
  
  <p>This is my code till now:</p>
  
  <pre><code>import Tkinter as tk
  from Tkinter import *
  
  class MainApp(tk.Tk):
  
      def __init__(self, *args, **kwargs):
          tk.Tk.__init__(self, *args, **kwargs)
  
          container = tk.Frame(self)
          container.pack(side="top", fill="both", expand=True)
          container.grid_rowconfigure(0, weight=1)
          container.grid_columnconfigure(0, weight=1)
  
          self.frames = {}
          for F in (StartPage, PageOne, PageTwo):
              page_name = F.__name__
              frame = F(parent=container, controller=self)
              self.frames[page_name] = frame
              frame.grid(row=0, column=0, sticky="nsew")
              frame.grid_columnconfigure(0, weight=1)
  
          self.show_frame("StartPage")
  
      def show_frame(self, page_name):
          frame = self.frames[page_name]
          frame.tkraise()
  
  class StartPage(tk.Frame):
  
      def __init__(self, parent, controller):
          tk.Frame.__init__(self, parent)
          self.controller = controller
          #line 0
          label0 = tk.Label(self, text = 'full row', height=3, borderwidth=1)
          label0.configure(relief='raised')
          label0.grid(row=0, column=0, columnspan=12)
  
          # line 1
          label1 = tk.Label(self, text='0', width=10)
          label1.configure(relief='raised', bg='white')
          label1.grid(row=1, column=0, sticky='w')
  
          buttonhlp = tk.Button(self, text="HELP", command=close_window)
          buttonhlp.grid(row=1, column=1, columnspan=4)
  
          label1 = tk.Label(self, text='')
          label1.grid(row=1, column=5)
  
          label1 = tk.Label(self, text='')
          label1.grid(row=1, column=6)
  
          buttonquit = tk.Button(self, text="Quit", command=close_window)
          buttonquit.grid(row=1, column=7, columnspan=4)
  
          label1 = tk.Label(self, text='11', width=10)
          label1.configure(relief='raised', bg='white')
          label1.grid(row=1, column=11, sticky='e')
  
  
  class PageOne(tk.Frame):
  
      def __init__(self, parent, controller):
          tk.Frame.__init__(self, parent)
          self.controller = controller
          label = tk.Label(self, text="This is page 1")
          label.pack(side="top", fill="x", pady=10)
          button = tk.Button(self, text="Go to the start page",
                             command=lambda: controller.show_frame("StartPage"))
          button.pack()
  
  
  class PageTwo(tk.Frame):
  
      def __init__(self, parent, controller):
          tk.Frame.__init__(self, parent)
          self.controller = controller
          label = tk.Label(self, text="This is page 2")
          label.pack(side="top", fill="x", pady=10)
          button = tk.Button(self, text="Go to the start page",
                             command=lambda: controller.show_frame("StartPage"))
          button.pack()
  
  
  
  
  def close_window ():
      app.destroy()
  
  
  if __name__ == "__main__":
      app = MainApp()
  
      app.overrideredirect(True)
      app.geometry("{0}x{1}+0+0".format(app.winfo_screenwidth(), app.winfo_screenheight()))
      app.focus_set()  # &lt;-- move focus to this widget
  
  
      app.mainloop()
  </code></pre>