Class Ui

Ui

Instancja środowiska interfejsu użytkownika aplikacji Google, która pozwala na dodawanie skryptu takie jak menu, okna i paski boczne. Skrypt może wchodzić w interakcje z interfejsem tylko w przypadku bieżącej instancji otwartego edytora i tylko wtedy, gdy skrypt jest powiązany z kontenerem.

// 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.');
}

Właściwości

WłaściwośćTypOpis
ButtonButtonEnum reprezentujące wstępnie określone, zlokalizowane przyciski okien zwrócone przez alert lub PromptResponse.getSelectedButton() w celu wskazania który przycisk w oknie dialogowym kliknął użytkownik.
ButtonSetButtonSetWyliczenie reprezentujące wstępnie określone, zlokalizowane zestawy jednego lub większej liczby przycisków dialogowych, które można została dodana do alertu lub potwierdzenia.

Metody

MetodaZwracany typKrótki opis
alert(prompt)ButtonOtwiera w edytorze użytkownika okno z podanym komunikatem i przyciskiem „OK”. Przycisk
alert(prompt, buttons)ButtonOtwiera w edytorze użytkownika okno z podaną wiadomością i zestawem przycisków.
alert(title, prompt, buttons)ButtonOtwiera w edytorze użytkownika okno dialogowe z podanym tytułem, komunikatem i zestawem przycisków.
createAddonMenu()MenuTworzy kreator, za pomocą którego można wstawić menu podrzędne do menu Rozszerzenia edytora.
createMenu(caption)MenuTworzy kreator, za pomocą którego można dodać menu do interfejsu użytkownika edytora.
prompt(prompt)PromptResponseOtwiera w edytorze użytkownika okno do wprowadzania danych z podanym komunikatem i przyciskiem „OK”. Przycisk
prompt(prompt, buttons)PromptResponseOtwiera w edytorze użytkownika okno do wprowadzania danych z podaną wiadomością i zestawem przycisków.
prompt(title, prompt, buttons)PromptResponseOtwiera w edytorze użytkownika okno do wprowadzania danych, zawierające dany tytuł, komunikat i zestaw przyciskami.
showModalDialog(userInterface, title)voidOtwiera w edytorze użytkownika okno modalne z niestandardową zawartością po stronie klienta.
showModelessDialog(userInterface, title)voidOtwiera bezmoderowane okno dialogowe edytora użytkownika z niestandardową zawartością po stronie klienta.
showSidebar(userInterface)voidOtwiera pasek boczny w edytorze użytkownika z niestandardową zawartością po stronie klienta.

Szczegółowa dokumentacja

alert(prompt)

Otwiera w edytorze użytkownika okno dialogowe z podanym komunikatem i przyciskiem „OK”. Przycisk Ta metoda zawiesza skrypt po stronie serwera na czas otwierania okna. Skrypt zostanie wznowiony, gdy użytkownik zamyka okno, ale Jdbc połączeń i LockService zamków nie działa przez cały okres zawieszenia. Więcej informacji znajdziesz w przewodniku po oknach 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

NazwaTypOpis
promptStringKomunikat wyświetlany w oknie dialogowym.

Powrót

Button – przycisk, który kliknął użytkownik.


alert(prompt, buttons)

Otwiera w edytorze użytkownika okno z podaną wiadomością i zestawem przycisków. Ta metoda zawiesza skrypt po stronie serwera na czas otwierania okna. Skrypt zostanie wznowiony, gdy użytkownik zamyka okno, ale Jdbc połączeń i LockService zamków nie działa przez cały okres zawieszenia. Więcej informacji znajdziesz w przewodniku po oknach 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.
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.');
}

Parametry

NazwaTypOpis
promptStringKomunikat wyświetlany w oknie dialogowym.
buttonsButtonSetPrzycisk wyświetlany w oknie dialogowym.

Powrót

Button – przycisk, który kliknął użytkownik.


alert(title, prompt, buttons)

Otwiera w edytorze użytkownika okno dialogowe z podanym tytułem, komunikatem i zestawem przycisków. Ten zawiesza skrypt po stronie serwera na czas otwierania okna. Skrypt zostaje wznowiony po użytkownik zamyka okno, ale Jdbc połączeń i LockService zamków nie działa przez cały okres zawieszenia. Więcej informacji znajdziesz w przewodniku po oknach 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.
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.');
}

Parametry

NazwaTypOpis
titleStringTytuł wyświetlany nad oknem dialogowym.
promptStringKomunikat wyświetlany w oknie dialogowym.
buttonsButtonSetPrzycisk wyświetlany w oknie dialogowym.

Powrót

Button – przycisk, który kliknął użytkownik.


createAddonMenu()

Tworzy kreator, za pomocą którego można wstawić menu podrzędne do menu Rozszerzenia edytora. menu nie zostanie zaktualizowane, dopóki nie zostanie wywołana funkcja Menu.addToUi(). Jeśli skrypt jest uruchomiony jako dodatek, nazwa menu podrzędnego jest zgodna z nazwą dodatku w sklepie internetowym; jeśli skrypt jest powiązany bezpośrednio z dokumentem, nazwa menu podrzędnego pasuje do nazwy 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 kreator, za pomocą którego można dodać menu do interfejsu użytkownika edytora. Menu nie jest danych można dodawać do czasu wywołania funkcji Menu.addToUi(). Więcej informacji znajdziesz w przewodniku po menu. Menu najwyższego poziomu powinno mieć taką etykietę z wielkich liter (wszystkie główne słowa są pisane wielkimi literami), choć etykieta menu podrzędnego powinna zawierać Jak w zdaniu (tylko pierwszy wyraz pisany wielkimi literami). Jeśli skrypt został opublikowany jako dodatek, parametr caption jest ignorowany, a parametry zostanie dodane jako podmenu w menu Rozszerzenia, co odpowiada 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

NazwaTypOpis
captionStringEtykieta menu najwyższego poziomu, w której wszystkie najważniejsze słowa są pisane wielkimi literami lub tylko pierwsze słowo pisane wielką literą w menu podrzędnym.

Powrót

Menu – nowy kreator menu.


prompt(prompt)

Otwiera w edytorze użytkownika okno do wprowadzania danych z podanym komunikatem i przyciskiem „OK”. Przycisk Ten zawiesza skrypt po stronie serwera na czas otwierania okna. Skrypt zostaje wznowiony po użytkownik zamyka okno, ale Jdbc połączeń i LockService zamków nie działa przez cały okres zawieszenia. Więcej informacji znajdziesz w przewodniku po oknach 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.
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.');
}

Parametry

NazwaTypOpis
promptStringKomunikat wyświetlany w oknie dialogowym.

Powrót

PromptResponse – reprezentacja odpowiedzi użytkownika.


prompt(prompt, buttons)

Otwiera w edytorze użytkownika okno do wprowadzania danych z podaną wiadomością i zestawem przycisków. Ten zawiesza skrypt po stronie serwera na czas otwierania okna. Skrypt zostaje wznowiony po użytkownik zamyka okno, ale Jdbc połączeń i LockService zamków nie działa przez cały okres zawieszenia. Więcej informacji znajdziesz w przewodniku po oknach 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.
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.');
}

Parametry

NazwaTypOpis
promptStringKomunikat wyświetlany w oknie dialogowym.
buttonsButtonSetPrzycisk wyświetlany w oknie dialogowym.

Powrót

PromptResponse – reprezentacja odpowiedzi użytkownika.


prompt(title, prompt, buttons)

Otwiera w edytorze użytkownika okno do wprowadzania danych, zawierające dany tytuł, komunikat i zestaw przyciskami. Ta metoda zawiesza skrypt po stronie serwera na czas otwierania okna. Skrypt jest wznawiane po zamknięciu okna przez użytkownika, ale połączenia Jdbc i blokady LockService nie są zachowywane zawieszenia konta. Więcej informacji znajdziesz w przewodniku w oknach dialogowych i na 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.
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.');
}

Parametry

NazwaTypOpis
titleStringTytuł wyświetlany nad oknem dialogowym.
promptStringKomunikat wyświetlany w oknie dialogowym.
buttonsButtonSetPrzycisk wyświetlany w oknie dialogowym.

Powrót

PromptResponse – reprezentacja odpowiedzi użytkownika.


showModalDialog(userInterface, title)

Otwiera w edytorze użytkownika okno modalne z niestandardową zawartością po stronie klienta. Ta metoda nie zawieszaj skryptu po stronie serwera w czasie, gdy okno jest otwarte. Aby komunikować się z skryptu po stronie serwera, komponent po stronie klienta musi wykonywać asynchroniczne wywołania zwrotne za pomocą interfejsu API google.script dla HtmlService. Aby zamknąć okno automatycznie, wywołaj google.script.host.close() po stronie klienta w sieci HtmlService . Więcej informacji znajdziesz w przewodniku po oknach i

Okna modalne uniemożliwiają użytkownikowi interakcję z treściami innymi niż okno dialogowe. Według kontrast, bezmodalne okna dialogowe i paski boczne umożliwiają użytkownikowi interakcję z edytorem. Niemal we wszystkich przypadkach okno modalne lub pasek boczny jest lepszym wyborem niż niemodalne okno dialogowe.

// 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');

Parametry

NazwaTypOpis
userInterfaceObjectHtmlOutput reprezentujący interfejs do wyświetlenia.
titleStringTytuł okna; zastępuje dowolny tytuł ustawiony przez wywołanie funkcji setTitle() w dniu obiekt userInterface.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

showModelessDialog(userInterface, title)

Otwiera bezmoderowane okno dialogowe edytora użytkownika z niestandardową zawartością po stronie klienta. Ta metoda nie zawiesza skryptu po stronie serwera, gdy okno jest otwarte. Aby komunikować się z skryptu po stronie serwera, komponent po stronie klienta musi wykonywać asynchroniczne wywołania zwrotne za pomocą interfejsu API google.script dla HtmlService. Aby zamknąć okno automatycznie, wywołaj google.script.host.close() po stronie klienta w sieci HtmlService . Więcej informacji znajdziesz w przewodniku po oknach i

Bezmoderowane okna dialogowe umożliwiają użytkownikowi interakcję z edytorem za oknem. Z kolei okna modalne. Prawie we wszystkich przypadkach okno dialogowe lub pasek boczny jest lepszym rozwiązaniem niż niemodalne okno dialogowe.

// 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');

Parametry

NazwaTypOpis
userInterfaceObjectHtmlOutput reprezentujący interfejs do wyświetlenia.
titleStringTytuł okna; zastępuje dowolny tytuł ustawiony przez wywołanie funkcji setTitle() w dniu obiekt userInterface.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

showSidebar(userInterface)

Otwiera pasek boczny w edytorze użytkownika z niestandardową zawartością po stronie klienta. Ta metoda nie zawieszaj skryptu po stronie serwera, gdy pasek boczny jest otwarty. Aby komunikować się z skryptu po stronie serwera, komponent po stronie klienta musi wykonywać asynchroniczne wywołania zwrotne za pomocą interfejsu API google.script dla HtmlService. Zamykanie paska bocznego automatycznie, wywołaj google.script.host.close() po stronie klienta w sieci HtmlService . Więcej informacji znajdziesz w przewodniku po oknach i

Pasek boczny jest wyświetlany po prawej stronie edytora w przypadku użytkowników, których środowiska używają języka od lewej do prawej oraz po lewej stronie edytora dla języków pisanych od prawej do lewej. Wszystkie paski boczne wyświetlane przez skrypty mają szerokość 300 pikseli.

// 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);

Parametry

NazwaTypOpis
userInterfaceObjectHtmlOutput reprezentujący interfejs do wyświetlenia.

Autoryzacja

Skrypty korzystające z tej metody wymagają autoryzacji z co najmniej jednym z tych zakresów:

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

Wycofane metody