Concentrarsi su "InputField" al momento della creazione? [duplicare]
Supponiamo di creare un campo di input come
InputField[]
Dopo aver premuto Invio, il campo di input viene visualizzato nell'area di output sottostante, tuttavia lo stato attivo nel notebook salta direttamente alla riga successiva, dove è possibile creare una nuova cella. C'è un modo per creare un InputField
e selezionarlo immediatamente per metterlo a fuoco al momento della creazione (senza doverci fare clic su di esso), in modo che il testo possa essere digitato immediatamente nel InputField
?
Risposte
È possibile assegnare un ID casella a un campo di input utilizzando BoxID -> "id"
e utilizzare la funzione FrontEnd`MoveCursorToInputField
per spostare il focus sul campo di input desiderato:
InputField[Null, BoxID -> "id"]
FrontEnd`MoveCursorToInputField[EvaluationNotebook[], "id"];

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


In alternativa, evidenzia il contenuto della cella e usa Ctrl
+ Shift
+ Enter
per valutare in posizione:
