tkinter: mainloop() opens root window twice
OS: Windows 10
Python 3.7, Jupyter notebook
I have a very simple script that opens a tkinter window with a single button that closes the window:
class App():
def __init__(self):
self.root = tk.Tk()
self.root.geometry("1000x600")
quit_button = tk.Button(self.root,
text = 'root quit',
command=self.quit)
quit_button.pack()
self.root.mainloop()
def quit(self):
self.root.destroy()
app = App()
If I run this code, a window opens up, and I can close it using the 'root quit' button. If however, I comment out "self.root.mainloop," run the code, then uncomment "self.root.mainloop" and run the code again two windows open.
Why is this?!
Thanks
python python-3.x tkinter
add a comment |
OS: Windows 10
Python 3.7, Jupyter notebook
I have a very simple script that opens a tkinter window with a single button that closes the window:
class App():
def __init__(self):
self.root = tk.Tk()
self.root.geometry("1000x600")
quit_button = tk.Button(self.root,
text = 'root quit',
command=self.quit)
quit_button.pack()
self.root.mainloop()
def quit(self):
self.root.destroy()
app = App()
If I run this code, a window opens up, and I can close it using the 'root quit' button. If however, I comment out "self.root.mainloop," run the code, then uncomment "self.root.mainloop" and run the code again two windows open.
Why is this?!
Thanks
python python-3.x tkinter
1
First we need to see the error and 2nd we need to see the code that creates the error. What you have shown now does not produce an error.
– Mike - SMT
Nov 15 '18 at 18:37
The kind of behavior you are describing is not reproducible. Please let us know what version of Python you are using and OS version. Also are you using an IDE like Eclipse/PyCharm or are you using python's default IDLE? Even using your example I am unable to produce 2 windows after fixing the error.
– Mike - SMT
Nov 15 '18 at 18:48
Are you running it in an interactive shell? If so some memory gets retained depending on how deep the error goes.
– Idlehands
Nov 15 '18 at 18:51
On your updated question I seejupyter notebook
and instantly think thats where your problem is.
– Mike - SMT
Nov 15 '18 at 20:26
add a comment |
OS: Windows 10
Python 3.7, Jupyter notebook
I have a very simple script that opens a tkinter window with a single button that closes the window:
class App():
def __init__(self):
self.root = tk.Tk()
self.root.geometry("1000x600")
quit_button = tk.Button(self.root,
text = 'root quit',
command=self.quit)
quit_button.pack()
self.root.mainloop()
def quit(self):
self.root.destroy()
app = App()
If I run this code, a window opens up, and I can close it using the 'root quit' button. If however, I comment out "self.root.mainloop," run the code, then uncomment "self.root.mainloop" and run the code again two windows open.
Why is this?!
Thanks
python python-3.x tkinter
OS: Windows 10
Python 3.7, Jupyter notebook
I have a very simple script that opens a tkinter window with a single button that closes the window:
class App():
def __init__(self):
self.root = tk.Tk()
self.root.geometry("1000x600")
quit_button = tk.Button(self.root,
text = 'root quit',
command=self.quit)
quit_button.pack()
self.root.mainloop()
def quit(self):
self.root.destroy()
app = App()
If I run this code, a window opens up, and I can close it using the 'root quit' button. If however, I comment out "self.root.mainloop," run the code, then uncomment "self.root.mainloop" and run the code again two windows open.
Why is this?!
Thanks
python python-3.x tkinter
python python-3.x tkinter
edited Nov 15 '18 at 20:26
Louis Steele
asked Nov 15 '18 at 18:23
Louis SteeleLouis Steele
162
162
1
First we need to see the error and 2nd we need to see the code that creates the error. What you have shown now does not produce an error.
– Mike - SMT
Nov 15 '18 at 18:37
The kind of behavior you are describing is not reproducible. Please let us know what version of Python you are using and OS version. Also are you using an IDE like Eclipse/PyCharm or are you using python's default IDLE? Even using your example I am unable to produce 2 windows after fixing the error.
– Mike - SMT
Nov 15 '18 at 18:48
Are you running it in an interactive shell? If so some memory gets retained depending on how deep the error goes.
– Idlehands
Nov 15 '18 at 18:51
On your updated question I seejupyter notebook
and instantly think thats where your problem is.
– Mike - SMT
Nov 15 '18 at 20:26
add a comment |
1
First we need to see the error and 2nd we need to see the code that creates the error. What you have shown now does not produce an error.
– Mike - SMT
Nov 15 '18 at 18:37
The kind of behavior you are describing is not reproducible. Please let us know what version of Python you are using and OS version. Also are you using an IDE like Eclipse/PyCharm or are you using python's default IDLE? Even using your example I am unable to produce 2 windows after fixing the error.
– Mike - SMT
Nov 15 '18 at 18:48
Are you running it in an interactive shell? If so some memory gets retained depending on how deep the error goes.
– Idlehands
Nov 15 '18 at 18:51
On your updated question I seejupyter notebook
and instantly think thats where your problem is.
– Mike - SMT
Nov 15 '18 at 20:26
1
1
First we need to see the error and 2nd we need to see the code that creates the error. What you have shown now does not produce an error.
– Mike - SMT
Nov 15 '18 at 18:37
First we need to see the error and 2nd we need to see the code that creates the error. What you have shown now does not produce an error.
– Mike - SMT
Nov 15 '18 at 18:37
The kind of behavior you are describing is not reproducible. Please let us know what version of Python you are using and OS version. Also are you using an IDE like Eclipse/PyCharm or are you using python's default IDLE? Even using your example I am unable to produce 2 windows after fixing the error.
– Mike - SMT
Nov 15 '18 at 18:48
The kind of behavior you are describing is not reproducible. Please let us know what version of Python you are using and OS version. Also are you using an IDE like Eclipse/PyCharm or are you using python's default IDLE? Even using your example I am unable to produce 2 windows after fixing the error.
– Mike - SMT
Nov 15 '18 at 18:48
Are you running it in an interactive shell? If so some memory gets retained depending on how deep the error goes.
– Idlehands
Nov 15 '18 at 18:51
Are you running it in an interactive shell? If so some memory gets retained depending on how deep the error goes.
– Idlehands
Nov 15 '18 at 18:51
On your updated question I see
jupyter notebook
and instantly think thats where your problem is.– Mike - SMT
Nov 15 '18 at 20:26
On your updated question I see
jupyter notebook
and instantly think thats where your problem is.– Mike - SMT
Nov 15 '18 at 20:26
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53325715%2ftkinter-mainloop-opens-root-window-twice%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53325715%2ftkinter-mainloop-opens-root-window-twice%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
First we need to see the error and 2nd we need to see the code that creates the error. What you have shown now does not produce an error.
– Mike - SMT
Nov 15 '18 at 18:37
The kind of behavior you are describing is not reproducible. Please let us know what version of Python you are using and OS version. Also are you using an IDE like Eclipse/PyCharm or are you using python's default IDLE? Even using your example I am unable to produce 2 windows after fixing the error.
– Mike - SMT
Nov 15 '18 at 18:48
Are you running it in an interactive shell? If so some memory gets retained depending on how deep the error goes.
– Idlehands
Nov 15 '18 at 18:51
On your updated question I see
jupyter notebook
and instantly think thats where your problem is.– Mike - SMT
Nov 15 '18 at 20:26