Class Ui

Ui

Google ऐप्लिकेशन के लिए यूज़र-इंटरफ़ेस एनवायरमेंट का एक इंस्टेंस, जो स्क्रिप्ट को मेन्यू, डायलॉग, और साइडबार जैसी सुविधाएं. स्क्रिप्ट ओपन एडिटर के मौजूदा इंस्टेंस में देखा जा सकता है और सिर्फ़ तब, जब स्क्रिप्ट एडिटर के लिए कंटेनर-बाउंड हो.

// Display a dialog box with a title, message, input field, and "Yes" and "No" buttons. The
// user can also close the dialog by clicking the close button in its title bar.
var ui = SpreadsheetApp.getUi();
var response = ui.prompt('Getting to know you', 'May I know your name?', ui.ButtonSet.YES_NO);

// Process the user's response.
if (response.getSelectedButton() == ui.Button.YES) {
  Logger.log('The user\'s name is %s.', response.getResponseText());
} else if (response.getSelectedButton() == ui.Button.NO) {
  Logger.log('The user didn\'t want to provide a name.');
} else {
  Logger.log('The user clicked the close button in the dialog\'s title bar.');
}

प्रॉपर्टी

प्रॉपर्टीटाइपब्यौरा
ButtonButtonसंकेत देने के लिए सूचना या PromptResponse.getSelectedButton() के ज़रिए लौटाए गए पहले से तय, स्थानीय भाषा के डायलॉग बटन को दिखाने वाली सूची उपयोगकर्ता ने डायलॉग में किस बटन पर क्लिक किया.
ButtonSetButtonSetएक या उससे ज़्यादा डायलॉग बटन के पहले से तय और स्थानीय भाषा में सेट किए गए सेट को दिखाने वाली सूची किसी सूचना या प्रॉम्प्ट में जोड़ा गया हो.

तरीके

तरीकारिटर्न टाइपसंक्षिप्त विवरण
alert(prompt)Buttonइससे उपयोगकर्ता के एडिटर में, दिए गए मैसेज और "OK" के साथ एक डायलॉग बॉक्स खुलता है बटन.
alert(prompt, buttons)Buttonइससे उपयोगकर्ता के एडिटर में, दिए गए मैसेज और अलग-अलग बटन के साथ एक डायलॉग बॉक्स खुलता है.
alert(title, prompt, buttons)Buttonइससे उपयोगकर्ता के एडिटर में, दिए गए टाइटल, मैसेज, और बटन के सेट वाला एक डायलॉग बॉक्स खुलता है.
createAddonMenu()Menuएक बिल्डर बनाता है जिसका इस्तेमाल एडिटर के एक्सटेंशन मेन्यू में सब-मेन्यू शामिल करने के लिए किया जा सकता है.
createMenu(caption)Menuएक बिल्डर बनाता है, जिसका इस्तेमाल एडिटर के यूज़र इंटरफ़ेस में मेन्यू जोड़ने के लिए किया जा सकता है.
prompt(prompt)PromptResponseइससे उपयोगकर्ता के एडिटर में, दिए गए मैसेज और "OK" के साथ इनपुट डायलॉग बॉक्स खुलता है बटन.
prompt(prompt, buttons)PromptResponseइससे उपयोगकर्ता के एडिटर में, दिए गए मैसेज और बटन के सेट के साथ इनपुट डायलॉग बॉक्स खुलता है.
prompt(title, prompt, buttons)PromptResponseइससे उपयोगकर्ता के संपादक में दिए गए शीर्षक, संदेश, और बटन.
showModalDialog(userInterface, title)voidइससे उपयोगकर्ता के एडिटर में, कस्टम क्लाइंट-साइड कॉन्टेंट वाला मॉडल डायलॉग बॉक्स खुलता है.
showModelessDialog(userInterface, title)voidइससे उपयोगकर्ता के एडिटर में, कस्टम क्लाइंट-साइड कॉन्टेंट वाला बिना मोड वाला एक डायलॉग बॉक्स खुलता है.
showSidebar(userInterface)voidइससे उपयोगकर्ता के एडिटर में, पसंद के मुताबिक क्लाइंट-साइड कॉन्टेंट वाला एक साइडबार खुलता है.

विस्तृत दस्तावेज़

alert(prompt)

इससे उपयोगकर्ता के एडिटर में, दिए गए मैसेज और "OK" के साथ एक डायलॉग बॉक्स खुलता है बटन. यह तरीका डायलॉग खुला होने पर सर्वर-साइड स्क्रिप्ट को निलंबित करता है. उपयोगकर्ता के बाद स्क्रिप्ट फिर से शुरू हो जाती है डायलॉग बॉक्स को खारिज कर देता है, लेकिन Jdbc कनेक्शन और LockService लॉक काम नहीं करते निलंबन के दौरान बनी रहती है. ज़्यादा जानकारी के लिए, डायलॉग और साइडबार की गाइड देखें.

// Display "Hello, world" in a dialog box with an "OK" button. The user can also close the
// dialog by clicking the close button in its title bar.
SpreadsheetApp.getUi().alert('Hello, world');

पैरामीटर

नामटाइपब्यौरा
promptStringडायलॉग बॉक्स में दिखने वाला मैसेज.

वापसी का टिकट

Button — वह बटन जिस पर उपयोगकर्ता ने क्लिक किया.


alert(prompt, buttons)

इससे उपयोगकर्ता के एडिटर में, दिए गए मैसेज और अलग-अलग बटन के साथ एक डायलॉग बॉक्स खुलता है. यह तरीका डायलॉग खुला होने पर सर्वर-साइड स्क्रिप्ट को निलंबित करता है. उपयोगकर्ता के बाद स्क्रिप्ट फिर से शुरू हो जाती है डायलॉग बॉक्स को खारिज कर देता है, लेकिन Jdbc कनेक्शन और LockService लॉक काम नहीं करते निलंबन के दौरान बनी रहती है. ज़्यादा जानकारी के लिए, डायलॉग और साइडबार की गाइड देखें.

// Display a dialog box with a message and "Yes" and "No" buttons. The user can also close the
// dialog by clicking the close button in its title bar.
var ui = SpreadsheetApp.getUi();
var response = ui.alert('Are you sure you want to continue?', ui.ButtonSet.YES_NO);

// Process the user's response.
if (response == ui.Button.YES) {
  Logger.log('The user clicked "Yes."');
} else {
  Logger.log('The user clicked "No" or the close button in the dialog\'s title bar.');
}

पैरामीटर

नामटाइपब्यौरा
promptStringडायलॉग बॉक्स में दिखने वाला मैसेज.
buttonsButtonSetडायलॉग बॉक्स में दिखाने के लिए सेट किया गया बटन.

वापसी का टिकट

Button — वह बटन जिस पर उपयोगकर्ता ने क्लिक किया.


alert(title, prompt, buttons)

इससे उपयोगकर्ता के एडिटर में, दिए गए टाइटल, मैसेज, और बटन के सेट वाला एक डायलॉग बॉक्स खुलता है. यह तरीका, डायलॉग खुले रहने पर सर्वर-साइड स्क्रिप्ट को निलंबित कर देता है. स्क्रिप्ट उपयोगकर्ता डायलॉग को खारिज करता है, लेकिन Jdbc कनेक्शन और LockService लॉक काम नहीं करते निलंबन के दौरान बनी रहती है. ज़्यादा जानकारी के लिए, डायलॉग और साइडबार की गाइड देखें.

// Display a dialog box with a title, message, and "Yes" and "No" buttons. The user can also
// close the dialog by clicking the close button in its title bar.
var ui = SpreadsheetApp.getUi();
var response = ui.alert('Confirm', 'Are you sure you want to continue?', ui.ButtonSet.YES_NO);

// Process the user's response.
if (response == ui.Button.YES) {
  Logger.log('The user clicked "Yes."');
} else {
  Logger.log('The user clicked "No" or the close button in the dialog\'s title bar.');
}

पैरामीटर

नामटाइपब्यौरा
titleStringडायलॉग बॉक्स के ऊपर दिखाने के लिए टाइटल.
promptStringडायलॉग बॉक्स में दिखने वाला मैसेज.
buttonsButtonSetडायलॉग बॉक्स में दिखाने के लिए सेट किया गया बटन.

वापसी का टिकट

Button — वह बटन जिस पर उपयोगकर्ता ने क्लिक किया.


createAddonMenu()

एक बिल्डर बनाता है जिसका इस्तेमाल एडिटर के एक्सटेंशन मेन्यू में सब-मेन्यू शामिल करने के लिए किया जा सकता है. कॉन्टेंट बनाने Menu.addToUi() को कॉल करने तक, मेन्यू असल में अपडेट नहीं होता. अगर स्क्रिप्ट चल रही है ऐड-ऑन के तौर पर, सब-मेन्यू का नाम, वेब स्टोर में मौजूद ऐड-ऑन के नाम से मेल खाता है; अगर स्क्रिप्ट सीधे दस्तावेज़ से बाउंड है, तो सब-मेन्यू का नाम स्क्रिप्ट के नाम से मेल खाता है. ज़्यादा जानकारी के लिए, मेन्यू की गाइड देखें.

// Add an item to the Add-on menu, under a sub-menu whose name is set automatically.
function onOpen(e) {
  SpreadsheetApp.getUi()
      .createAddonMenu()
      .addItem('Show', 'showSidebar')
      .addToUi();
}

वापसी का टिकट

Menu — नया मेन्यू बिल्डर.


createMenu(caption)

एक बिल्डर बनाता है, जिसका इस्तेमाल एडिटर के यूज़र इंटरफ़ेस में मेन्यू जोड़ने के लिए किया जा सकता है. मेन्यू को तब तक जोड़ा जाना चाहिए, जब तक Menu.addToUi() को कॉल नहीं किया जाता. ज़्यादा जानकारी के लिए, मेन्यू की गाइड देखें. टॉप-लेवल मेन्यू के लिए लेबल हेडलाइन केस में (सभी मुख्य शब्द बड़े अक्षरों में), हालांकि सब-मेन्यू का लेबल वाक्य केस (सिर्फ़ पहला शब्द बड़ा होना चाहिए). अगर स्क्रिप्ट को ऐड-ऑन के तौर पर पब्लिश किया जाता है, तो caption पैरामीटर को अनदेखा कर दिया जाता है और मेन्यू को एक्सटेंशन मेन्यू के सब-मेन्यू के तौर पर जोड़ा जाता है. यह मेन्यू createAddonMenu() के बराबर होता है.

// Add a custom menu to the active document, including a separator and a sub-menu.
function onOpen(e) {
  SpreadsheetApp.getUi()
      .createMenu('My Menu')
      .addItem('My menu item', 'myFunction')
      .addSeparator()
      .addSubMenu(SpreadsheetApp.getUi().createMenu('My sub-menu')
          .addItem('One sub-menu item', 'mySecondFunction')
          .addItem('Another sub-menu item', 'myThirdFunction'))
      .addToUi();
}

पैरामीटर

नामटाइपब्यौरा
captionStringमेन्यू का लेबल, जिसमें टॉप-लेवल मेन्यू के लिए सभी मुख्य शब्द कैपिटल लेटर में होते हैं, या सब-मेन्यू के लिए सिर्फ़ पहला शब्द कैपिटल लेटर में हो.

वापसी का टिकट

Menu — नया मेन्यू बिल्डर.


prompt(prompt)

इससे उपयोगकर्ता के एडिटर में, दिए गए मैसेज और "OK" के साथ इनपुट डायलॉग बॉक्स खुलता है बटन. यह तरीका, डायलॉग खुले रहने पर सर्वर-साइड स्क्रिप्ट को निलंबित कर देता है. स्क्रिप्ट उपयोगकर्ता डायलॉग को खारिज करता है, लेकिन Jdbc कनेक्शन और LockService लॉक काम नहीं करते निलंबन के दौरान बनी रहती है. ज़्यादा जानकारी के लिए, डायलॉग और साइडबार की गाइड देखें.

// Display a dialog box with a message, input field, and an "OK" button. The user can also
// close the dialog by clicking the close button in its title bar.
var ui = SpreadsheetApp.getUi();
var response = ui.prompt('Enter your name:');

// Process the user's response.
if (response.getSelectedButton() == ui.Button.OK) {
  Logger.log('The user\'s name is %s.', response.getResponseText());
} else {
  Logger.log('The user clicked the close button in the dialog\'s title bar.');
}

पैरामीटर

नामटाइपब्यौरा
promptStringडायलॉग बॉक्स में दिखने वाला मैसेज.

वापसी का टिकट

PromptResponse — यह उपयोगकर्ता का जवाब दिखाता है.


prompt(prompt, buttons)

इससे उपयोगकर्ता के एडिटर में, दिए गए मैसेज और बटन के सेट के साथ इनपुट डायलॉग बॉक्स खुलता है. यह तरीका, डायलॉग खुले रहने पर सर्वर-साइड स्क्रिप्ट को निलंबित कर देता है. स्क्रिप्ट उपयोगकर्ता डायलॉग को खारिज करता है, लेकिन Jdbc कनेक्शन और LockService लॉक काम नहीं करते निलंबन के दौरान बनी रहती है. ज़्यादा जानकारी के लिए, डायलॉग और साइडबार की गाइड देखें.

// Display a dialog box with a message, input field, and "Yes" and "No" buttons. The user can
// also close the dialog by clicking the close button in its title bar.
var ui = SpreadsheetApp.getUi();
var response = ui.prompt('May I know your name?', ui.ButtonSet.YES_NO);

// Process the user's response.
if (response.getSelectedButton() == ui.Button.YES) {
  Logger.log('The user\'s name is %s.', response.getResponseText());
} else if (response.getSelectedButton() == ui.Button.NO) {
  Logger.log('The user didn\'t want to provide a name.');
} else {
  Logger.log('The user clicked the close button in the dialog\'s title bar.');
}

पैरामीटर

नामटाइपब्यौरा
promptStringडायलॉग बॉक्स में दिखने वाला मैसेज.
buttonsButtonSetडायलॉग बॉक्स में दिखाने के लिए सेट किया गया बटन.

वापसी का टिकट

PromptResponse — यह उपयोगकर्ता का जवाब दिखाता है.


prompt(title, prompt, buttons)

इससे उपयोगकर्ता के संपादक में दिए गए शीर्षक, संदेश, और बटन. इस तरीके से डायलॉग खुले रहने पर सर्वर साइड स्क्रिप्ट निलंबित हो जाती है. स्क्रिप्ट उपयोगकर्ता के डायलॉग खारिज करने के बाद फिर से शुरू हो जाता है. हालांकि, Jdbc कनेक्शन और LockService लॉक पूरी तरह से लागू नहीं होते निलंबन. ज़्यादा जानकारी के लिए, गाइड देखें डायलॉग और साइडबार.

// Display a dialog box with a title, message, input field, and "Yes" and "No" buttons. The
// user can also close the dialog by clicking the close button in its title bar.
var ui = SpreadsheetApp.getUi();
var response = ui.prompt('Getting to know you', 'May I know your name?', ui.ButtonSet.YES_NO);

// Process the user's response.
if (response.getSelectedButton() == ui.Button.YES) {
  Logger.log('The user\'s name is %s.', response.getResponseText());
} else if (response.getSelectedButton() == ui.Button.NO) {
  Logger.log('The user didn\'t want to provide a name.');
} else {
  Logger.log('The user clicked the close button in the dialog\'s title bar.');
}

पैरामीटर

नामटाइपब्यौरा
titleStringडायलॉग बॉक्स के ऊपर दिखाने के लिए टाइटल.
promptStringडायलॉग बॉक्स में दिखने वाला मैसेज.
buttonsButtonSetडायलॉग बॉक्स में दिखाने के लिए सेट किया गया बटन.

वापसी का टिकट

PromptResponse — यह उपयोगकर्ता का जवाब दिखाता है.


showModalDialog(userInterface, title)

इससे उपयोगकर्ता के एडिटर में, कस्टम क्लाइंट-साइड कॉन्टेंट वाला मॉडल डायलॉग बॉक्स खुलता है. इस तरीके से, डायलॉग बॉक्स खुले होने पर, सर्वर साइड स्क्रिप्ट को निलंबित नहीं किया जाता. बातचीत करने के लिए, सर्वर साइड स्क्रिप्ट का इस्तेमाल करता है, तो क्लाइंट-साइड कॉम्पोनेंट को HtmlService के लिए google.script एपीआई का इस्तेमाल करके एसिंक्रोनस कॉलबैक बनाना होगा. डायलॉग बॉक्स बंद करने के लिए प्रोग्रामेटिक रूप से, को कॉल करें HtmlService वेब के क्लाइंट साइड पर google.script.host.close() है. ज़्यादा जानकारी के लिए, डायलॉग बॉक्स और साइडबार.

मोडल डायलॉग, उपयोगकर्ता को डायलॉग के अलावा किसी भी दूसरी चीज़ से इंटरैक्ट करने से रोकते हैं. इन्होंने बदलाव किया है कंट्रास्ट, मोडलेस डायलॉग, और साइडबार की मदद से उपयोगकर्ता, एडिटर के साथ इंटरैक्ट कर सकते हैं. करीब-करीब सभी मामलों में, मोडल डायलॉग या साइडबार, बिना मोड वाले डायलॉग बॉक्स के बजाय बेहतर विकल्प है.

// Display a modal dialog box with custom HtmlService content.
var htmlOutput = HtmlService
    .createHtmlOutput('<p>A change of speed, a change of style...</p>')
    .setWidth(250)
    .setHeight(300);
SpreadsheetApp.getUi().showModalDialog(htmlOutput, 'My add-on');

पैरामीटर

नामटाइपब्यौरा
userInterfaceObjectHtmlOutput जो दिखाने के लिए इंटरफ़ेस का प्रतिनिधित्व करता है.
titleStringडायलॉग का टाइटल; setTitle() को कॉल करने पर सेट किए गए टाइटल को बदल देता है userInterface ऑब्जेक्ट.

अनुमति देना

इस तरीके का इस्तेमाल करने वाली स्क्रिप्ट के लिए, यहां दिए गए एक या एक से ज़्यादा स्कोप की अनुमति होनी चाहिए:

  • https://www.googleapis.com/auth/script.container.ui

showModelessDialog(userInterface, title)

इससे उपयोगकर्ता के एडिटर में, कस्टम क्लाइंट-साइड कॉन्टेंट वाला बिना मोड वाला एक डायलॉग बॉक्स खुलता है. यह तरीका डायलॉग खुले रहने पर, सर्वर साइड स्क्रिप्ट को निलंबित नहीं करता. इनसे संपर्क करने में सर्वर साइड स्क्रिप्ट का इस्तेमाल करता है, तो क्लाइंट-साइड कॉम्पोनेंट को HtmlService के लिए google.script एपीआई का इस्तेमाल करके एसिंक्रोनस कॉलबैक बनाना होगा. डायलॉग बॉक्स बंद करने के लिए प्रोग्रामेटिक रूप से, को कॉल करें HtmlService वेब के क्लाइंट साइड पर google.script.host.close() है. ज़्यादा जानकारी के लिए, डायलॉग बॉक्स और साइडबार.

मोडलेस डायलॉग की मदद से, उपयोगकर्ता डायलॉग बॉक्स में काम करने वाले एडिटर से इंटरैक्ट कर सकता है. इसके उलट, मॉडल डायलॉग में काम नहीं करते. करीब सभी मामलों में, मोडल डायलॉग या साइडबार बिना मोड वाले डायलॉग का बेहतर विकल्प है.

// Display a modeless dialog box with custom HtmlService content.
var htmlOutput = HtmlService
    .createHtmlOutput('<p>A change of speed, a change of style...</p>')
    .setWidth(250)
    .setHeight(300);
SpreadsheetApp.getUi().showModelessDialog(htmlOutput, 'My add-on');

पैरामीटर

नामटाइपब्यौरा
userInterfaceObjectHtmlOutput जो दिखाने के लिए इंटरफ़ेस का प्रतिनिधित्व करता है.
titleStringडायलॉग का टाइटल; setTitle() को कॉल करने पर सेट किए गए टाइटल को बदल देता है userInterface ऑब्जेक्ट.

अनुमति देना

इस तरीके का इस्तेमाल करने वाली स्क्रिप्ट के लिए, यहां दिए गए एक या एक से ज़्यादा स्कोप की अनुमति होनी चाहिए:

  • https://www.googleapis.com/auth/script.container.ui

showSidebar(userInterface)

इससे उपयोगकर्ता के एडिटर में, पसंद के मुताबिक क्लाइंट-साइड कॉन्टेंट वाला एक साइडबार खुलता है. इस तरीके से, साइडबार खुला होने पर, सर्वर साइड स्क्रिप्ट को निलंबित नहीं करता. बातचीत करने के लिए, सर्वर साइड स्क्रिप्ट का इस्तेमाल करता है, तो क्लाइंट-साइड कॉम्पोनेंट को HtmlService के लिए google.script एपीआई का इस्तेमाल करके एसिंक्रोनस कॉलबैक बनाना होगा. साइडबार बंद करने के लिए प्रोग्रामेटिक रूप से, को कॉल करें HtmlService वेब के क्लाइंट साइड पर google.script.host.close() है. ज़्यादा जानकारी के लिए, डायलॉग बॉक्स और साइडबार.

यह साइडबार उन उपयोगकर्ताओं के लिए एडिटर की दाईं ओर दिखता है जिनके एनवायरमेंट बाईं से दाईं ओर लिखी जाने वाली भाषाओं के लिए और एडिटर के बाईं ओर पर क्लिक करें. सभी स्क्रिप्ट से दिखाए गए साइडबार 300 पिक्सल चौड़े होते हैं.

// Display a sidebar with custom HtmlService content.
var htmlOutput = HtmlService
    .createHtmlOutput('<p>A change of speed, a change of style...</p>')
    .setTitle('My add-on');
SpreadsheetApp.getUi().showSidebar(htmlOutput);

पैरामीटर

नामटाइपब्यौरा
userInterfaceObjectHtmlOutput जो दिखाने के लिए इंटरफ़ेस का प्रतिनिधित्व करता है.

अनुमति देना

इस तरीके का इस्तेमाल करने वाली स्क्रिप्ट के लिए, यहां दिए गए एक या एक से ज़्यादा स्कोप की अनुमति होनी चाहिए:

  • https://www.googleapis.com/auth/script.container.ui

ऐसे तरीके जो अब काम नहीं करते