Сосредоточиться на `InputField` при создании? [дубликат]
Aug 17 2020
Допустим, мы создаем поле ввода как
InputField[]
После нажатия клавиши ввода поле ввода появляется в области вывода ниже, однако фокус в записной книжке переходит прямо к следующей строке, где можно создать новую ячейку. Есть ли способ создать InputField
и сразу выделить его в фокус при создании (без необходимости нажимать на него), чтобы текст можно было сразу ввести в InputField
?
Ответы
4 kglr Aug 18 2020 at 05:22
Вы можете назначить идентификатор поля полю ввода, используя BoxID -> "id"
эту функцию FrontEnd`MoveCursorToInputField
для перемещения фокуса на желаемое поле ввода:
InputField[Null, BoxID -> "id"]
FrontEnd`MoveCursorToInputField[EvaluationNotebook[], "id"];

Другой пример:
Grid[{{InputField[Dynamic[x]], InputField[Dynamic[y], BoxID -> "ify"],
InputField[Dynamic[z]]}}]
FrontEnd`MoveCursorToInputField[EvaluationNotebook[], "ify"];


Или же выделите содержимое ячейки и используйте Ctrl
+ Shift
+ Enter
для оценки на месте:
