有一种简单的方法可以让它发挥作用吗?
text = "";
DialogInput[{TextCell["Try to type a text with linebreaks :-)"],
InputField[Dynamic[text], String],
Button["Ok", DialogReturn[text]]}]
问题是输入Return
后InputField终止。我只想要一个简单的文本输入字段。
答案 0 :(得分:11)
感谢单挑的列昂尼德。这是代码:
text = "";
DialogInput[{TextCell["Try to type a text with linebreaks :-)"],
InputField[Dynamic[text], String, FieldSize -> {30, 6}],
DefaultButton[DialogReturn[text]]},
NotebookEventActions -> {"ReturnKeyDown" :>
FrontEndExecute[NotebookWrite[InputNotebook[], "\n"]]}]
此版本中的FrontEndExecute语句稍微简单一些。
顺便说一句,要清除NotebookEventActions的默认Return键操作,您可以使用NotebookEventActions->{}
。这对于在输入期间停止对话框消失非常有用。