I was trying out a python code example at Rosetta Code - a programming chrestomathy site, where solutions to the same task are presented in as many different programming languag
The error message is telling you that the dialog needs a parent window.
With Python 2.x, you create the root window with:
import tkinter
from tkinter import simpledialog
root = tkinter.Tk()
To hide the root window if you don't want it, use:
root.withdraw()
See the Python Tkinter Docs for more info.
I've never used askinteger
, but judging from the error message it looks like the dialog needs to know its parent but you're not telling it what its parent should be. Try adding parent=widget
(where "widget" is a reference to some other widget -- typically the root widget). I can't find any documentation that says this is required, but I'm guessing it is since all Tkinter widgets except the root window need to have a parent.
If the code you show in your question is the complete code, you're missing some other things. You need to create an instance of the Tk
class (called the "root" window), and you need to start the event loop (though, it's possible that the dialog runs it's own event loop, so you might be OK if all you need is the single dialog).