Display standard output in Tk widget
As Ashish commented, just use a Label and tie it to a StringVar variable:
class Application(Frame): def __init__(self, master): Frame.__init__(self, master) self.grid() self.create_widgets()# The class below will house the buttons and boxes def create_widgets(self): self.button1 = Button(self, text = "Four Sided Dice", command=self.dice4) self.button1.grid() self.button2 = Button(self, text = "Six Sided Dice", command=self.dice6) self.button2.grid() self.button3 = Button(self, text = "Twelve Sided Dice", command=self.dice12) self.button3.grid() self.label_var = StringVar() self.label1 = Label(self, textvariable=self.label_var) self.label1.grid() # The bellow classes define the commands to use the random function def dice4(self): fourside = random.randint(1,4) self.label_var.set("You Rolled a " + str(fourside) + " using a four sided dice") def dice6(self): sixside = random.randint(1,6) self.label_var.set("You Rolled a " + str(sixside) + " using a six sided dice") def dice12(self): twelveside = random.randint(1,12) self.label_var.set("You Rolled a " + str(twelveside) + " using a twelve sided dice")app = Application(diceroll)diceroll.mainloop()
Note: I made the dice functions methods of the Application class.