''' Created on Oct 26, 2017 @author: Aditya This function demonstrates the use of frames in tkinter ''' import tkinter as tk from tkinter import ttk class DisplayApp: def __init__(self, master): self.frame = ttk.Frame(master, width = 100, height = 100) # frame height and width are in pixel self.frame.pack() self.frame.config(relief = tk.RAISED) # to define frame boarder self.button = ttk.Button(self.frame, text = 'Click for Magic') self.button.config(command = self.performMagic) self.button.grid() # use grid geometry manager self.frame.config(padding = (30,15)) self.lbfrm = ttk.LabelFrame(master, width = 100, height = 100) self.lbfrm.config(padding = (30, 15)) self.lbfrm.config(text = "Magic Below") self.lbfrm.pack() self.label = ttk.Label(self.lbfrm, text = "Waiting for Magic") self.label.grid() def performMagic(self): if self.label['text'] == "Waiting for Magic": self.label.config(text = 'Magic Performed') else: self.label.config(text = "Waiting for Magic") def DisplayAppLaunch(): root = tk.Tk() DisplayApp(root) tk.mainloop() if __name__ == '__main__': DisplayAppLaunch()