निर्माण पर `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का उपयोग करें :