I would like to get input from an interactive dialog that uses Manipulate[]. But I find that my Manipulate[] breaks when I put it inside a DialogInput[]. So, when I try DialogInput[Manipulate[Plot[Sin[e x], {x, 0, 2 \[Pi]}], {e, 1, 10}]] the plot inside the dialog is not connected to the Manipulate[] slider. What am I missing here?

link|improve this question
feedback

1 Answer

up vote 10 down vote accepted

Try using global variables. Return the value with DialogReturn.

res = DialogInput[{
         TextCell["Set value of e. Then click Proceed."],
         Manipulate[Plot[Sin[e x], {x, 0, 2 \[Pi]}], {e, 1, 10, 
              Appearance -> "Open" }, 
         LocalizeVariables -> False], 
         Button["Proceed", DialogReturn[e]]
                 }]

DialogInput

link|improve this answer
Nice. This may be the first practical use I've seen of LocalizeVariables -> False. – Mr.Wizard Feb 21 at 23:05
Thanks, that's great. – Greg P Feb 21 at 23:18
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.