2016-09-14 12 views
6

मैं बनाम के लिए एक एक्सटेंशन विकसित कर रहा हूं, और मैं उपयोगकर्ता को एक आईएनआई फ़ाइल कॉन्फ़िगर करने में मदद करने के लिए एक कस्टम संवाद प्रदर्शित करना चाहता हूं।
लेबल और इनपुट के साथ एक कस्टम संवाद बनाना संभव है?बनाम कोड में कस्टम संवाद कैसे बनाएं?

उत्तर

7

आप नए UI तत्व नहीं बना सकते हैं, लेकिन आप नीचे की तरह कोड का उपयोग कर सकते हैं उपयोगकर्ता से इनपुट प्राप्त करना चाहते हैं:

let options: InputBoxOptions = { 
    prompt: "Label: ", 
    placeHolder: "(placeholder)" 
} 

window.showInputBox(options).then(value => { 
    if (!value) return; 
    answer1 = value; 
    // show the next dialog, etc. 
}); 

यह वही यूआई आदेश पैलेट के रूप में (जब आप ctrl प्रेस का उपयोग करेगा + पी, या अन्य आदेशों में से कोई भी जो शीर्ष पर इनपुट बॉक्स खोलता है)।

+0

क्या यह अभी भी 2017 में सच है? मुझे आश्चर्य है कि क्या बनाम या यूएम की "यूआई नीति" का संदर्भ है, जहां वे चर्चा करते हैं कि यह अभी तक एपीआई का हिस्सा क्यों नहीं है या क्या वे भविष्य में इसे लागू करने की योजना बना रहे हैं? –

+1

हां यह अभी भी सच है। आप यहां इस फैसले के पीछे सिद्धांतों को पढ़ सकते हैं: https://code.visualstudio.com/docs/extensionAPI/patterns-and-principles – Llewey

+1

"हम विस्तार लेखकों को अंतर्निहित UI DOM तक सीधे पहुंच प्रदान नहीं करते हैं। वीएस कोड के साथ, हम निरंतर अंतर्निहित वेब प्रौद्योगिकियों के उपयोग को अनुकूलित करने की कोशिश कर रहे हैं ... और हम इन प्रौद्योगिकियों और हमारे उत्पाद के विकास के रूप में हमारे डीओएम के उपयोग को ट्यून करना जारी रखेंगे ... हम अपनी मेजबान प्रक्रिया में एक्सटेंशन चलाते हैं और सीधे पहुंच को रोकते हैं डीओएम। वीएस कोड में इंटेलिसेन्स जैसे सामान्य परिदृश्यों के लिए यूआई घटकों का एक अंतर्निर्मित सेट भी शामिल है, ताकि ये अनुभव प्रोग्रामिंग भाषाओं और एक्सटेंशन में सक्षम हों और एक्सटेंशन डेवलपर्स को अपना खुद का निर्माण करने की आवश्यकता न हो। " – Llewey

संबंधित मुद्दे