Нажатие ENTER внутри поля ввода CDF Player дублирует строку.Как изменить поведение? - PullRequest
0 голосов
/ 31 августа 2011

Я создал CDF с несколькими полями ввода в середине текста, чтобы читатель мог вводить свои собственные значения.

На CDF Player (8.0.3) все работает нормально, кроме случаев, когда пользовательпосле изменения значения внутри поля нажимает ENTER вместо: «Return» или «Tab» или «мышь выбирает другое поле».

Если он нажимает ENTER, проигрыватель CDF делает то же самое, что Mathematicaвыполняет: дублирование строки, в результате чего в середине появляется некоторая внутренняя структура ячейки.

Все пользователи Mathematica могут легко избежать нажатия клавиши ENTER, но пользователи проигрывателя CDF, скорее всего, не знают об этой двойственности ENTER / RETURN.

Я перепробовал все варианты записной книжки, которые я мог вспомнить: развернутые, редактируемые и т. Д., Но безуспешно,

Еще одна вещь, которую я запомнил, это удалить действие ENTER с помощью NotebookEventAction, но могне найти как это сделать: {"KeyDown", "Enter"} -> Null ???;пробовал Enter, EnterKey, [EnterKey] и т. д., но безуспешно.

Может кто-нибудь помочь мне убрать этот побочный эффект Enter из CDF Payer?

1 Ответ

2 голосов
/ 31 августа 2011

Это хорошо работает для чисел:

ExpressionCell[InputField[Dynamic[x], Number], Evaluatable -> False, 
 Background -> White]

Для других типов ввода shift-Enter создает разрыв строки.

...