Re: Input cells destroy Grids?
- To: mathgroup at smc.vnet.net
- Subject: [mg124795] Re: Input cells destroy Grids?
- From: Mark Green <p0073857 at brookes.ac.uk>
- Date: Tue, 7 Feb 2012 04:03:06 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <jgaufa$esh$1@smc.vnet.net> <jgdn3d$qpg$1@smc.vnet.net>
That's perfect, exactly what I wanted - thanks very much!
I would like to know if there's any reason why the Grid was ignored,
though - is it a Mathematica bug or am I combining things incorrectly?
On Feb 2, 10:04 am, A Retey <a... at gmx-topmail.de> wrote:
> Am 01.02.2012 09:51, schrieb Mark Green:
>
> > I'm trying to make a slide which will allow students to insert arbitrary numbers into a matrix multiplication, and have gotten this:
>
> > incel = {1, 2, 3, 4};
> > matrix = {{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, 0}, {0, 0, 0, 1}};
> > Style[Grid[{{MatrixForm[incel, TableDirections -> Row],
> > ""}, {InputField[MatrixForm[matrix]], MatrixForm[incel.matrix]}}],
> > FontSize -> 40]
>
> > It looks fine if I remove the InputField call, but with it in there, the input field takes up the entire width of the notebook, ignoring the fact there's supposed to be a grid cell to the right of it. Also, I have a feeling this won't work in FreeCDF because the input is of a matrix, not a number.
>
> > Is there a better way of doing this that inputs only numbers and that fits in a grid?
>
> I think this is doing what you want:
>
> matrix = {{1, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, 1, 0}, {0, 0, 0, 1}};
>
> MatrixForm[
> Table[With[{i = i, j = j},
> InputField[Dynamic[matrix[[i, j]]], Number, ImageSize -> 50]], {i,
> 4}, {j, 4}]]
>
> If you want, you can use Appearance -> None for the InputFields which
> makes the result look like what you had. On the other hand I think that
> it usually is best to avoid overdressed user interface but instead stick
> with conventions for guis so everyone will understand at first glance
> how they work...
>
> hth,
>
> albert