11
$\begingroup$

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?

$\endgroup$
13
$\begingroup$

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

$\endgroup$
  • $\begingroup$ Nice. This may be the first practical use I've seen of LocalizeVariables -> False. $\endgroup$ – Mr.Wizard Feb 21 '12 at 23:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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