Instancja środowiska interfejsu użytkownika aplikacji Google, która umożliwia skryptowi dodawanie funkcji takich jak menu, okna i paski boczne. Skrypt może wchodzić w interakcję z interfejsem tylko w przypadku bieżącej instancji otwartego edytora i tylko wtedy, gdy jest powiązany z kontenerem edytora.
// 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. const ui = SpreadsheetApp.getUi(); const 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.'); }
Właściwości
| Właściwość | Typ | Opis |
|---|---|---|
Button | Button | Wyliczenie reprezentujące wstępnie określone, zlokalizowane przyciski okna dialogowego zwracane przez alert lub Prompt, aby wskazać, który przycisk w oknie dialogowym kliknął użytkownik. |
Button | Button | Wyliczenie reprezentujące wstępnie określone, zlokalizowane zestawy co najmniej 1 przycisku okna, które można dodać do alertu lub okna z prośbą o potwierdzenie. |
Metody
| Metoda | Zwracany typ | Krótki opis |
|---|---|---|
alert(prompt) | Button | Otwiera w edytorze użytkownika okno z podaną wiadomością i przyciskiem „OK”. |
alert(prompt, buttons) | Button | Otwiera w edytorze użytkownika okno z podaną wiadomością i zestawem przycisków. |
alert(title, prompt, buttons) | Button | Otwiera w edytorze użytkownika okno z podanym tytułem, komunikatem i zestawem przycisków. |
create | Menu | Tworzy narzędzie do tworzenia, którego można użyć do wstawienia podmenu do menu Rozszerzenia w edytorze. |
create | Menu | Tworzy narzędzie do tworzenia, którego można użyć do dodania menu do interfejsu użytkownika edytora. |
prompt(prompt) | Prompt | Otwiera w edytorze użytkownika okno wprowadzania z podanym komunikatem i przyciskiem „OK”. |
prompt(prompt, buttons) | Prompt | Otwiera w edytorze użytkownika okno dialogowe z podaną wiadomością i zestawem przycisków. |
prompt(title, prompt, buttons) | Prompt | Otwiera w edytorze użytkownika okno dialogowe z danym tytułem, komunikatem i zestawem przycisków. |
show | void | Otwiera w edytorze użytkownika okno modalne z niestandardową treścią po stronie klienta. |
show | void | Otwiera w edytorze użytkownika niemodalne okno z niestandardową zawartością po stronie klienta. |
show | void | Otwiera w edytorze użytkownika pasek boczny z niestandardowymi treściami po stronie klienta. |
Szczegółowa dokumentacja
alert(prompt)
Otwiera w edytorze użytkownika okno z podaną wiadomością i przyciskiem „OK”. Ta metoda wstrzymuje skrypt po stronie serwera, gdy okno jest otwarte. Skrypt zostanie wznowiony po zamknięciu okna przez użytkownika, ale Jdbcpołączenia i LockServiceblokady nie będą utrzymywane podczas zawieszenia. Więcej informacji znajdziesz w przewodniku po oknach dialogowych i paskach bocznych.
// 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');
Parametry
| Nazwa | Typ | Opis |
|---|---|---|
prompt | String | Wiadomość, która ma być wyświetlana w oknie dialogowym. |
Powrót
Button – przycisk kliknięty przez użytkownika.
alert(prompt, buttons)
Otwiera w edytorze użytkownika okno z podaną wiadomością i zestawem przycisków. Ta metoda wstrzymuje skrypt po stronie serwera, gdy okno jest otwarte. Skrypt zostanie wznowiony po zamknięciu okna przez użytkownika, ale Jdbcpołączenia i LockServiceblokady nie będą utrzymywane podczas zawieszenia. Więcej informacji znajdziesz w przewodniku po oknach dialogowych i paskach bocznych.
// 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. const ui = SpreadsheetApp.getUi(); const 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.', ); }
Parametry
| Nazwa | Typ | Opis |
|---|---|---|
prompt | String | Wiadomość, która ma być wyświetlana w oknie dialogowym. |
buttons | Button | Zestaw przycisków, które mają być wyświetlane w oknie dialogowym. |
Powrót
Button – przycisk kliknięty przez użytkownika.
alert(title, prompt, buttons)
Otwiera w edytorze użytkownika okno z podanym tytułem, komunikatem i zestawem przycisków. Ta metoda wstrzymuje skrypt po stronie serwera, gdy okno dialogowe jest otwarte. Skrypt jest wznawiany po zamknięciu okna przez użytkownika, ale połączenia Jdbc i blokady LockService nie są zachowywane po zawieszeniu. Więcej informacji znajdziesz w przewodniku po oknach dialogowych i paskach bocznych.
// 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. const ui = SpreadsheetApp.getUi(); const 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.', ); }
Parametry
| Nazwa | Typ | Opis |
|---|---|---|
title | String | Tytuł, który ma się wyświetlać nad oknem dialogowym. |
prompt | String | Wiadomość, która ma być wyświetlana w oknie dialogowym. |
buttons | Button | Zestaw przycisków, które mają być wyświetlane w oknie dialogowym. |
Powrót
Button – przycisk kliknięty przez użytkownika.
createAddonMenu()
Tworzy narzędzie do tworzenia, którego można użyć do wstawienia podmenu do menu Rozszerzenia w edytorze. Menu nie zostanie zaktualizowane, dopóki nie zostanie wywołana funkcja Menu.addToUi(). Jeśli skrypt jest uruchamiany jako dodatek, nazwa podmenu jest zgodna z nazwą dodatku w sklepie internetowym. Jeśli skrypt jest powiązany bezpośrednio z dokumentem, nazwa podmenu jest zgodna z nazwą skryptu. Więcej informacji znajdziesz w przewodniku po menu.
// 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(); }
Powrót
Menu – nowy kreator menu.
createMenu(caption)
Tworzy narzędzie do tworzenia, którego można użyć do dodania menu do interfejsu użytkownika edytora. Menu nie zostanie dodane, dopóki nie zostanie wywołana funkcja Menu.addToUi(). Więcej informacji znajdziesz w przewodniku po menu. Etykieta menu najwyższego poziomu powinna być pisana wielką literą (wszystkie główne słowa zaczynają się wielką literą), a etykieta podmenu powinna być pisana jak w zdaniu (tylko pierwsze słowo zaczyna się wielką literą). Jeśli skrypt jest opublikowany jako dodatek, parametr caption jest ignorowany, a menu jest dodawane jako podmenu menu Rozszerzenia, czyli 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(); }
Parametry
| Nazwa | Typ | Opis |
|---|---|---|
caption | String | Etykieta menu, w której wszystkie główne słowa są pisane wielką literą w przypadku menu najwyższego poziomu lub tylko pierwsze słowo jest pisane wielką literą w przypadku podmenu. |
Powrót
Menu – nowy kreator menu.
prompt(prompt)
Otwiera w edytorze użytkownika okno wprowadzania z podanym komunikatem i przyciskiem „OK”. Ta metoda wstrzymuje skrypt po stronie serwera, gdy okno dialogowe jest otwarte. Skrypt jest wznawiany po zamknięciu okna przez użytkownika, ale połączenia Jdbc i blokady LockService nie są zachowywane po zawieszeniu. Więcej informacji znajdziesz w przewodniku po oknach dialogowych i paskach bocznych.
// 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. const ui = SpreadsheetApp.getUi(); const 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.'); }
Parametry
| Nazwa | Typ | Opis |
|---|---|---|
prompt | String | Wiadomość, która ma być wyświetlana w oknie dialogowym. |
Powrót
PromptResponse – reprezentacja odpowiedzi użytkownika.
prompt(prompt, buttons)
Otwiera w edytorze użytkownika okno dialogowe z podaną wiadomością i zestawem przycisków. Ta metoda wstrzymuje skrypt po stronie serwera, gdy okno dialogowe jest otwarte. Skrypt jest wznawiany po zamknięciu okna przez użytkownika, ale połączenia Jdbc i blokady LockService nie są zachowywane po zawieszeniu. Więcej informacji znajdziesz w przewodniku po oknach dialogowych i paskach bocznych.
// 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. const ui = SpreadsheetApp.getUi(); const 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.'); }
Parametry
| Nazwa | Typ | Opis |
|---|---|---|
prompt | String | Wiadomość, która ma być wyświetlana w oknie dialogowym. |
buttons | Button | Zestaw przycisków, które mają być wyświetlane w oknie dialogowym. |
Powrót
PromptResponse – reprezentacja odpowiedzi użytkownika.
prompt(title, prompt, buttons)
Otwiera w edytorze użytkownika okno dialogowe z danym tytułem, komunikatem i zestawem przycisków. Ta metoda wstrzymuje skrypt po stronie serwera, gdy okno jest otwarte. Skrypt jest wznawiany po zamknięciu okna przez użytkownika, ale Jdbc połączenia i LockService blokady nie są zachowywane po zawieszeniu. Więcej informacji znajdziesz w przewodniku po oknach dialogowych i paskach bocznych.
// 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. const ui = SpreadsheetApp.getUi(); const 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.'); }
Parametry
| Nazwa | Typ | Opis |
|---|---|---|
title | String | Tytuł, który ma się wyświetlać nad oknem dialogowym. |
prompt | String | Wiadomość, która ma być wyświetlana w oknie dialogowym. |
buttons | Button | Zestaw przycisków, które mają być wyświetlane w oknie dialogowym. |
Powrót
PromptResponse – reprezentacja odpowiedzi użytkownika.
showModalDialog(userInterface, title)
Otwiera w edytorze użytkownika okno modalne z niestandardową treścią po stronie klienta. Ta metoda nie wstrzymuje skryptu po stronie serwera, gdy okno jest otwarte. Aby komunikować się ze skryptem po stronie serwera, komponent po stronie klienta musi wykonywać asynchroniczne wywołania zwrotne za pomocą interfejsu google.script API dla HtmlService. Aby zamknąć okno dialogowe programowo, wywołaj
google.script.host.close() po stronie klienta aplikacji internetowej HtmlService. Więcej informacji znajdziesz w przewodniku po oknach dialogowych i paskach bocznych.
Okna modalne uniemożliwiają użytkownikowi interakcję z czymkolwiek innym niż okno. Okna niemodalne i paski boczne umożliwiają użytkownikowi interakcję z edytorem. W większości przypadków lepszym wyborem jest okno modalne lub panel boczny niż okno niemodalne.
// Display a modal dialog box with custom HtmlService content. const htmlOutput = HtmlService .createHtmlOutput( '<p>A change of speed, a change of style...</p>', ) .setWidth(250) .setHeight(300); SpreadsheetApp.getUi().showModalDialog(htmlOutput, 'My add-on');
Parametry
| Nazwa | Typ | Opis |
|---|---|---|
user | Object | Obiekt Html
reprezentujący interfejs do wyświetlenia. |
title | String | Tytuł okna. Zastępuje każdy tytuł ustawiony przez wywołanie funkcji set na obiekcie user. |
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/script.container.ui
showModelessDialog(userInterface, title)
Otwiera w edytorze użytkownika niemodalne okno z niestandardową zawartością po stronie klienta. Ta metoda nie wstrzymuje skrypt po stronie serwera, gdy okno dialogowe jest otwarte. Aby komunikować się ze skryptem po stronie serwera, komponent po stronie klienta musi wykonywać asynchroniczne wywołania zwrotne za pomocą interfejsu google.script API dla HtmlService. Aby zamknąć okno dialogowe programowo, wywołaj
google.script.host.close() po stronie klienta aplikacji internetowej HtmlService. Więcej informacji znajdziesz w przewodniku po oknach dialogowych i paskach bocznych.
Okna niemodalne umożliwiają użytkownikowi interakcję z edytorem znajdującym się za oknem. Natomiast okna modalne nie. W większości przypadków lepszym wyborem niż okno niemodalne jest okno modalne lub pasek boczny.
// Display a modeless dialog box with custom HtmlService content. const htmlOutput = HtmlService .createHtmlOutput( '<p>A change of speed, a change of style...</p>', ) .setWidth(250) .setHeight(300); SpreadsheetApp.getUi().showModelessDialog(htmlOutput, 'My add-on');
Parametry
| Nazwa | Typ | Opis |
|---|---|---|
user | Object | Obiekt Html
reprezentujący interfejs do wyświetlenia. |
title | String | Tytuł okna. Zastępuje każdy tytuł ustawiony przez wywołanie funkcji set na obiekcie user. |
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/script.container.ui
showSidebar(userInterface)
Otwiera w edytorze użytkownika pasek boczny z niestandardowymi treściami po stronie klienta. Ta metoda nie wstrzymuje skryptu po stronie serwera, gdy pasek boczny jest otwarty. Aby komunikować się ze skryptem po stronie serwera, komponent po stronie klienta musi wykonywać asynchroniczne wywołania zwrotne za pomocą interfejsu google.script API dla HtmlService. Aby programowo zamknąć pasek boczny, wywołaj
google.script.host.close() po stronie klienta aplikacji internetowej HtmlService. Więcej informacji znajdziesz w przewodniku po oknach i paskach bocznych.
Użytkownikom, którzy korzystają z języków pisanych od lewej do prawej, pasek boczny wyświetla się po prawej stronie edytora, a użytkownikom, którzy korzystają z języków pisanych od prawej do lewej – po lewej stronie. Wszystkie paski boczne wyświetlane przez skrypty mają szerokość 300 pikseli.
// Display a sidebar with custom HtmlService content. const htmlOutput = HtmlService .createHtmlOutput( '<p>A change of speed, a change of style...</p>', ) .setTitle('My add-on'); SpreadsheetApp.getUi().showSidebar(htmlOutput);
Parametry
| Nazwa | Typ | Opis |
|---|---|---|
user | Object | Obiekt Html
reprezentujący interfejs do wyświetlenia. |
Autoryzacja
Skrypty korzystające z tej metody wymagają autoryzacji z użyciem co najmniej jednego z tych zakresów:
-
https://www.googleapis.com/auth/script.container.ui