[Tutor] Trying out Tkinter with problems

Adam Cripps kabads at gmail.com
Sat Feb 19 11:00:04 CET 2005


On Sat, 19 Feb 2005 10:43:07 +0100, Gregor Lingl <glingl at aon.at> wrote:
> Hi Adam!
> 
> I'm not a Tkinter expert, so I probably cannot provide
> the best solution for your problem.
> Nevertheless I tried two corrections, which adress your
> problem seeminly successfully
> 
> Adam Cripps schrieb:
> > I'm trying out Tkinter as one of my first forays into GUI programming.
> > However, I'm having a couple of problems.
> >
> > My intitial efforts can be seen at:
> > http://www.monkeez.org/code/python/tkinter/min.txt or here [1].
> >
> > Firstly, I'm trying to grab the contents of Entry widget entry1 with a
> > StringVar and take that value to another function to print the value
> > to the command line. However, my function 'printentry' always runs
> > when the application is run, without the button being pressed. Then,
> > when I do press the button, the function isn't called. However, this
> > button is just the same as all the other buttons. Why is this?
> 
> This is because of
> 
> command=self.printentry(self.content.get())
> 
> in createWidgets. Here you don't assign the method pintentry
> to command, but the result of executing this method. (So it is
> ececuted, when createWidget is called, but not when the command
> is executed.
> 
> Remedy:
> 
>         self.save2Button = Button(self, text = "Submit",
>                                    command=self.printentry)
> 
> *and*
> 
>         def printentry(self):
>                 print "ok - the submit has been pressed - \
>                         I need to get  it's value"
>                 print self.content.get()
> 
> >
> > Secondly, when I try to exit the app, the quit button doesn't kill the
> > root, window, but just the widgets. How do I reference the root window
> > and all, instead of just exiting the widgets?
> 
> self.destroy destroys the frame, not the root window.
> 
> Remedy:
> 
>         def exiting(self):
>                 if tkMessageBox.askokcancel("Quit",
>                                         "Do you really wish to quit?"):
>                         self.master.destroy()
> 
> I'm not sure if this is the canonical way of exiting a
> Tkinter-App :-(   (Perhaps somebody knows more.)
> 
> Hope this helps,
> Gregor
> 
> >
> > TIA - Adam
> >
> 
> --
> Gregor Lingl

Gregor - many thanks!  All suggestions worked, so perhaps you
underestimate your skills? Level of skills are just relative aren't
they?

Thanks again. 
Adam

-- 
http://www.monkeez.org
PGP key: 0x7111B833


More information about the Tutor mailing list