Why is my Tkintering so bad?
richard_chamberlain
richard_chamberlain at ntlworld.com
Sat Jun 3 03:50:05 EDT 2000
Example 1 doesn't work because when you create and pack in the same
statement the pack method actually returns none.
So in your example cmd is actually None, which obviously hasn't got a bind
method.
try
cmd=Button(root,text='Press')
cmd.pack()
cmd.bind etc.
Richard
dsavitsk <dsavitsk at e-coli.net> wrote in message
news:XL%Z4.2161$gr4.67106 at news1.rdc1.il.home.com...
> example 1 does not work, example 2 does. anybody know why?
> more importantly, i need to read text from a ScrolledText (Pmw) and i
can't
> do it. The code i am attempting to use (or at least the relevant part) is
> in Example 3. i am used to things like...
> x = Form.Text1.text (vb) so this is really foreign. essentially there is a
> text box and a button. at startup the text box reads from a text file
(this
> works fine), then when the user pushes the button the contents of the text
> box are written to the output window. It is this step of connecting code
to
> events to visuals that i am not getting. any suggestions at all will be a
> big help and greatly appreciated.
>
> thanks,
> doug
>
> # Example 1 -------------------------------------
> from Tkinter import *
> root = Tk()
> def buttonAction():
> print "click"
>
> cmd = Button(root, text="Press").pack(side=TOP)
> cmd.bind('<Button-1>', buttonAction)
> root.mainloop()
>
> # Example 2 --------------------------------------
> from Tkinter import *
> root = Tk()
> def buttonAction():
> print "click"
>
> cmd = Button(root, text="Press", command=buttonAction).pack(side=TOP)
> root.mainloop()
>
> # Example 3 ---------------------------------------
> from Tkinter import *
> import Pmw
>
> def SaveEdits():
> x = st.get()
> print x
>
> def MakeInterface():
> flt = Frame(root)
> st = Pmw.ScrolledText(flt, labelpos=N, label_text='Stuff',
> text_wrap='none')
> st.importfile('TestData.txt')
> st.pack(fill=BOTH, expand=1, padx=5, pady=5)
>
> flt.pack(side=TOP, expand=YES, fill=X)
>
> flb = Frame(fl)
> cmdSave = Button(flb, width=20, text='Save Edits', borderwidth=3,
> relief=GROOVE, command=SaveEdits).pack(side=TOP, pady=5)
> flb.pack(side=TOP, expand=YES, fill=X)
>
> root = Tk()
> root.title('window title')
> MakeInterface()
> root.mainloop()
>
>
More information about the Python-list
mailing list