[EMAIL PROTECTED] wrote: > I have created a button widget with a button click binding. The button > initially has a state=disabled. I can see the greyed out version of > the button in the GUI. But If I click on the button it still invokes > the callback/binding function. > > Any suggestions as to why the callback is being invoked even though > the button has a disabled state. It looks like- > > b=Button(frame, text = "Button", state = 'disabled') > > b.bind("<ButtonRelease-1>", > lambda > event : > function() > ) > > Thanks > Rahul >
DISABLED refers to the whether the function supplied in the "command" parameter is called when the button is pressed, other bindings are irrelevant, so you will need code to re-bind any events you have bound when the button is "disabled". So its better to just use the "command" parameter rather than binding mouse events. An exception is Checkbutton, where you might want to bind <ButtonRelease-1> and then query the button's state (or the state of an IntVar associated with it) to make a decision--if you want a GUI to respond real-time to user events. James -- http://mail.python.org/mailman/listinfo/python-list