       Re: Variable amount of Buttons in Mathematica

• To: mathgroup at smc.vnet.net
• Subject: [mg92791] Re: Variable amount of Buttons in Mathematica
• From: "David Park" <djmpark at comcast.net>
• Date: Mon, 13 Oct 2008 06:20:12 -0400 (EDT)
• References: <gcscrf\$8l3\$1@smc.vnet.net>

```The problem is that the second argument of Button is maintained unevaluated.
So n in Print[n] does not get filled in by the iterator. The following trick
will work. The With statement replaces n with the iterator value everywhere
in the Button statement.

array = {1, 2, 3, 4, 5};
Row[Table[
With[{n = n},
Button[array[[n]], Print[n], ImageSize -> {50, 50}]],
{n, 1, Length[array], 1}]]

--
David Park
djmpark at comcast.net
http://home.comcast.net/~djmpark/

"SDY" <youngsd2 at gmail.com> wrote in message
news:gcscrf\$8l3\$1 at smc.vnet.net...
> I'm pretty new to this...
>
> I'm trying to write a function that will create a variable number of
> buttons (based on some input) and relate each button to a function call
> with a unique parameter value. For example:
>
> array = {1, 2, 3, 4, 5};
> Column[{Row[
>   Table[Button[array[[n]], Print[n], ImageSize -> {50, 50}], {n,
> 1,Length[array], 1}]]}]
>
> Gives me five buttons, labeled 1-5, but each prints 'n' when clicked on.
> How would I change this to print the value of n?
>
> My best guess at this point is that there is a scoping issue with n, but I
> don't have enough Mathematica experience to know how to assign static
> values...
>
>
> Thanks
>

```

• Prev by Date: Re: Variable amount of Buttons in Mathematica
• Next by Date: Re: Executing external notebook
• Previous by thread: Re: Variable amount of Buttons in Mathematica
• Next by thread: Re: Variable amount of Buttons in Mathematica