Re: Initialization problem in a DynamicModule
- To: mathgroup at smc.vnet.net
- Subject: [mg106640] Re: [mg106634] Initialization problem in a DynamicModule
- From: Patrick Scheibe <pscheibe at trm.uni-leipzig.de>
- Date: Wed, 20 Jan 2010 06:46:01 -0500 (EST)
- References: <201001191014.FAA29115@smc.vnet.net>
Hi,
it matters that your assign and initialize functions have DownValues.
Panel@DynamicModule[{x, y, assign, initialize},
Grid[{{"", "A", "B"}, {"w/ assign:",
RadioButton[Dynamic[x, (x = #; assign[]) &], True],
RadioButton[Dynamic[x, (x = #; assign[]) &],
False]}, {"w/o assign:", RadioButton[Dynamic@x, True],
RadioButton[Dynamic@x, False]}, {"value:", Dynamic@x}},
Dividers -> {False, {False, True, True, True, False}},
Alignment -> {Left, {Center}}],
Initialization :> (assign[] := (y =
x);(*further variables to update*)
initialize[] := (x = True; assign[]);(*initialization function*)
initialize[];)]
Cheers
Patrick
On Tue, 2010-01-19 at 05:14 -0500, István wrote:
> Dear Group,
>
> I have some problem with a complex interface inside a DynamicModule.
> This is a toy version of the program, which can fully reproduce the
> malfunction:
>
> Panel@DynamicModule[
> {x, y, assign, initialize},
>
> Grid[{
> {"", "A", "B"},
> {"w/ assign:", RadioButton[Dynamic[x, (x = #; assign) &], True],
> RadioButton[Dynamic[x, (x = #; assign) &], False]},
> {"w/o assign:", RadioButton[Dynamic@x, True],
> RadioButton[Dynamic@x, False]},
> {"value:", Dynamic@x}
> }, Dividers -> {False, {False, True, True, True, False}},
> Alignment -> {Left, {Center}}],
>
> Initialization :> (
> assign := (y = x);(* further variables to update *)
> initialize := (x = True; assign); (* initialization function *)
> initialize;
> )
> ]
>
> Now for some reason, the radiobuttons do not function as intended (at
> least as I want).
> The following clicking orders do not work:
>
> [w/ + B] then [w/ + A]
> [w/o + B] then [w/ + A]
>
> these work correctly:
>
> [w/ + B] then [w/o + A]
> [w/o + B] then [w/o + A]
>
> I guess, that the problem is with the "initialize" (or the "assign")
> function. Any idea?
> Thanks in advance
>
> Istv=E1n
>
- References:
- Initialization problem in a DynamicModule
- From: István <replicatorzed@gmail.com>
- Initialization problem in a DynamicModule