Re: WIDGET REALIZATION BUG in 5.5 ? [message #28760] |
Tue, 08 January 2002 09:00  |
Pavel A. Romashkin
Messages: 531 Registered: November 2000
|
Senior Member |
|
|
If you create a button and then call Widget_Control on it in the same
routine, this button is not realized yet, I think. You can check on that
by inserting a breakpoint befor the end of the routine and checking if
your button is displayed.
None of my business, but why create a new button every time? There are
other widgets for multiple choice solutions, and it is easy to change
properties of an existing button.
Good luck,
Pavel
Martin Lowry wrote:
>
> Hi All,
>
> I have just installed 5.5 and came across an error I hadn't seen in
> 5.4.
>
> I use a 'PRO_SET_VALUE' routine to create a button each time I load an
> image file. This button's UVALUE carries information about the file
> and serves as a launching button for the file it represents. At the
> end of the routine I use WIDGET_CONTROL to send an event to the just
> created button to make it the 'currently' active button and update
> some display labels. Unfortunately IDL comes back with the following
> message:
>
> % WIDGET_CONTROL: Request not allowed on unrealized widget.
>
> This seems strange as the button must be realized, albeit implicitly,
> since it appears on screen!
>
> Any ideas how I might prevent the error?
>
> Cheers!
|
|
|
Re: WIDGET REALIZATION BUG in 5.5 ? [message #28813 is a reply to message #28760] |
Thu, 10 January 2002 06:35  |
m.lowry
Messages: 4 Registered: August 2001
|
Junior Member |
|
|
Hi All & Pavel,
"Pavel A. Romashkin" <pavel_romashkin@hotmail.com> wrote:"
> If you create a button and then call Widget_Control on it in the same
> routine, this button is not realized yet, I think. You can check on that
> by inserting a breakpoint befor the end of the routine and checking if
> your button is displayed.
Been there, done that : The button is displayed!
I also tried adding a NOTIFY_REALIZE routine to the button to perform
the SEND_EVENT, it never gets called! I'm beginning to think this is
specific to WIDGET_CONTROL since WIDGET_INFO is able to return the
button's UNAME ...
... Some time later ...
A little experimentation shows it to be even stranger, WIDGET_CONTROL
is still able to perform GET_UVALUE but not SET_UNAME. The latter is
critical to my application. If XMANAGER is set to BLOCK whilst the
code is running then although errors are generated and displayed, the
actions are performed!
Help, I'm confused >:(
Cheers!
|
|
|