Foco em `InputField` na criação? [duplicado]
Digamos que criamos um campo de entrada como
InputField[]
Após pressionar enter, o campo de entrada aparece na área de saída abaixo, porém o foco no notebook pula direto para a próxima linha, onde uma nova célula pode ser criada. Existe uma maneira de criar um InputField
e selecioná-lo imediatamente para o foco na criação (sem ter que clicar nele), de modo que o texto possa ser imediatamente digitado no InputField
?
Respostas
Você pode atribuir um id de caixa a um campo de entrada usando BoxID -> "id"
e usar a função FrontEnd`MoveCursorToInputField
para mover o foco para o campo de entrada desejado:
InputField[Null, BoxID -> "id"]
FrontEnd`MoveCursorToInputField[EvaluationNotebook[], "id"];

Outro exemplo:
Grid[{{InputField[Dynamic[x]], InputField[Dynamic[y], BoxID -> "ify"],
InputField[Dynamic[z]]}}]
FrontEnd`MoveCursorToInputField[EvaluationNotebook[], "ify"];


Como alternativa, destaque o conteúdo da célula e use Ctrl
+ Shift
+ Enter
para avaliar no local:
