def change(self, val): tableLbl = Label(self.frame1, text=" Table:") tableLbl.grid(row=1, column=2, sticky=W) self.button1.grid(row=1,column=4,sticky=W) self.button2.grid(row=1,column=5,sticky=W) self.button3.grid(row=1,column=6,sticky=W) schema = DataFunc.getSchemas() self.new = [] for s in schema: temp = (s[0],DataFunc.getTables(s[0])) self.new.append(temp) for s in self.new: if self.schemaVar.get() == s[0]: self.schemaCurr = s[1:] self.schemaCurr = self.schemaCurr[0] self.tableMenu = OptionMenu(self.frame1, self.tableVar,*self.schemaCurr, command=self.change2) self.tableMenu.grid(row=1, column=3, sticky=W)