Class Ui

Ui

Eine Instanz der Benutzeroberflächenumgebung für eine Google-App, die es dem Skript ermöglicht, wie Menüs, Dialogfelder und Seitenleisten. Ein Skript kann nur mit der UI für den aktuelle Instanz eines geöffneten Editors und nur, wenn das Skript containergebunden an den Editor ist.

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

Attribute

AttributTypBeschreibung
ButtonButtonEine Aufzählung, die vordefinierte, lokalisierte Dialogfeldschaltflächen darstellt, die von einer Benachrichtigung oder einem PromptResponse.getSelectedButton() zurückgegeben werden, um anzugeben, auf welche Schaltfläche in einem Dialogfeld die Nutzer geklickt haben.
ButtonSetButtonSetEine Aufzählung, die vordefinierte, lokalisierte Gruppen von einer oder mehreren Dialogfeldschaltflächen darstellt, die zu einer Benachrichtigung oder Eingabeaufforderung hinzugefügt.

Methoden

MethodeRückgabetypKurzbeschreibung
alert(prompt)ButtonÖffnet im Editor des Nutzers ein Dialogfeld mit der angegebenen Nachricht und einem "OK" Schaltfläche.
alert(prompt, buttons)ButtonÖffnet im Editor des Nutzers ein Dialogfeld mit der angegebenen Meldung und einer Reihe von Schaltflächen.
alert(title, prompt, buttons)ButtonÖffnet im Editor des Nutzers ein Dialogfeld mit dem angegebenen Titel, der Meldung und den Schaltflächen.
createAddonMenu()MenuErstellt einen Builder, mit dem ein Untermenü in das Menü „Erweiterungen“ des Editors eingefügt werden kann.
createMenu(caption)MenuErstellt einen Builder, mit dem der Benutzeroberfläche des Editors ein Menü hinzugefügt werden kann.
prompt(prompt)PromptResponseÖffnet im Editor des Nutzers ein Dialogfeld mit der angegebenen Nachricht und einem "OK" Schaltfläche.
prompt(prompt, buttons)PromptResponseÖffnet im Editor des Nutzers ein Dialogfeld für die Eingabe mit der angegebenen Nachricht und Schaltflächen.
prompt(title, prompt, buttons)PromptResponseÖffnet im Editor des Nutzers ein Eingabedialogfeld mit dem angegebenen Titel, der angegebenen Nachricht und mehreren Schaltflächen.
showModalDialog(userInterface, title)voidÖffnet im Editor des Nutzers ein modales Dialogfeld mit benutzerdefiniertem clientseitigem Inhalt.
showModelessDialog(userInterface, title)voidÖffnet im Editor des Nutzers ein Dialogfeld ohne Modus mit benutzerdefiniertem clientseitigem Inhalt.
showSidebar(userInterface)voidÖffnet im Editor des Nutzers eine Seitenleiste mit benutzerdefiniertem clientseitigem Inhalt.

Detaillierte Dokumentation

alert(prompt)

Öffnet im Editor des Nutzers ein Dialogfeld mit der angegebenen Nachricht und einem "OK" Schaltfläche. Diese Methode hält das serverseitige Skript an, während das Dialogfeld geöffnet ist. Das Skript wird fortgesetzt, nachdem der Nutzer Schließt das Dialogfeld, aber Jdbc Verbindungen und LockService-Schlösser nicht für die Dauer der Sperrung. Weitere Informationen finden Sie im Leitfaden zu Dialogfeldern und Seitenleisten.

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

Parameter

NameTypBeschreibung
promptStringDie Nachricht, die im Dialogfeld angezeigt wird.

Rückflug

Button: Die Schaltfläche, auf die der Nutzer geklickt hat.


alert(prompt, buttons)

Öffnet im Editor des Nutzers ein Dialogfeld mit der angegebenen Meldung und einer Reihe von Schaltflächen. Diese Methode hält das serverseitige Skript an, während das Dialogfeld geöffnet ist. Das Skript wird fortgesetzt, sobald der Nutzer Schließt das Dialogfeld, aber Jdbc Verbindungen und LockService-Schlösser nicht für die Dauer der Sperrung. Weitere Informationen finden Sie im Leitfaden zu Dialogfeldern und Seitenleisten.

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

Parameter

NameTypBeschreibung
promptStringDie Nachricht, die im Dialogfeld angezeigt wird.
buttonsButtonSetDie Schaltfläche, die im Dialogfeld angezeigt werden soll.

Rückflug

Button: Die Schaltfläche, auf die der Nutzer geklickt hat.


alert(title, prompt, buttons)

Öffnet im Editor des Nutzers ein Dialogfeld mit dem angegebenen Titel, der Meldung und den Schaltflächen. Dieses -Methode unterbricht das serverseitige Skript, während das Dialogfeld geöffnet ist. Das Skript wird fortgesetzt, nachdem Nutzer schließt das Dialogfeld, aber Jdbc Verbindungen und LockService-Schlösser nicht über die Sperrung hinaus. Weitere Informationen finden Sie im Leitfaden zu Dialogfeldern und Seitenleisten.

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

Parameter

NameTypBeschreibung
titleStringDer Titel, der über dem Dialogfeld angezeigt werden soll.
promptStringDie Nachricht, die im Dialogfeld angezeigt wird.
buttonsButtonSetDie Schaltfläche, die im Dialogfeld angezeigt werden soll.

Rückflug

Button: Die Schaltfläche, auf die der Nutzer geklickt hat.


createAddonMenu()

Erstellt einen Builder, mit dem ein Untermenü in das Menü „Erweiterungen“ des Editors eingefügt werden kann. Die wird erst aktualisiert, wenn Menu.addToUi() aufgerufen wird. Wenn das Skript ausgeführt wird als Add-on, stimmt der Name des Untermenüs mit dem Namen des Add-ons im Web Store überein. Wenn das Skript direkt an das Dokument gebunden ist, wird der Name des Untermenüs mit dem Namen des Skripts übereinstimmt. Weitere Informationen finden Sie im Leitfaden zu Speisekarten.

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

Rückflug

Menu: Der neue Menügenerator.


createMenu(caption)

Erstellt einen Builder, mit dem der Benutzeroberfläche des Editors ein Menü hinzugefügt werden kann. Das Menü ist nicht bis Menu.addToUi() aufgerufen wird. Weitere Informationen finden Sie im Leitfaden zu Speisekarten. Das Label für ein Menü der obersten Ebene sollte in der Großschreibung (alle wichtigen Wörter in Großbuchstaben), obwohl das Label für ein Untermenü in Erster Buchstabe im Satz großschreiben (nur das erste Wort in Großbuchstaben). Wenn das Skript als Add-on veröffentlicht wird, wird der Parameter caption ignoriert und der Parameter wird als Untermenü des Menüs „Erweiterungen“ hinzugefügt, ähnlich wie 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();
}

Parameter

NameTypBeschreibung
captionStringDas Label für das Menü, wobei alle wichtigen Wörter für ein Menü der obersten Ebene großgeschrieben sind. oder nur das erste Wort eines Untermenüs.

Rückflug

Menu: Der neue Menügenerator.


prompt(prompt)

Öffnet im Editor des Nutzers ein Dialogfeld mit der angegebenen Nachricht und einem "OK" Schaltfläche. Dieses -Methode unterbricht das serverseitige Skript, während das Dialogfeld geöffnet ist. Das Skript wird fortgesetzt, nachdem Nutzer schließt das Dialogfeld, aber Jdbc Verbindungen und LockService-Schlösser nicht über die Sperrung hinaus. Weitere Informationen finden Sie im Leitfaden zu Dialogfeldern und Seitenleisten.

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

Parameter

NameTypBeschreibung
promptStringDie Nachricht, die im Dialogfeld angezeigt wird.

Rückflug

PromptResponse: Darstellung der Antwort des Nutzers


prompt(prompt, buttons)

Öffnet im Editor des Nutzers ein Dialogfeld für die Eingabe mit der angegebenen Nachricht und Schaltflächen. Dieses -Methode unterbricht das serverseitige Skript, während das Dialogfeld geöffnet ist. Das Skript wird fortgesetzt, nachdem Nutzer schließt das Dialogfeld, aber Jdbc Verbindungen und LockService-Schlösser nicht über die Sperrung hinaus. Weitere Informationen finden Sie im Leitfaden zu Dialogfeldern und Seitenleisten.

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

Parameter

NameTypBeschreibung
promptStringDie Nachricht, die im Dialogfeld angezeigt wird.
buttonsButtonSetDie Schaltfläche, die im Dialogfeld angezeigt werden soll.

Rückflug

PromptResponse: Darstellung der Antwort des Nutzers


prompt(title, prompt, buttons)

Öffnet im Editor des Nutzers ein Eingabedialogfeld mit dem angegebenen Titel, der angegebenen Nachricht und mehreren Schaltflächen. Bei dieser Methode wird das serverseitige Skript angehalten, während das Dialogfeld geöffnet ist. Das Skript wird fortgesetzt, nachdem der Nutzer das Dialogfeld geschlossen hat, aber Jdbc-Verbindungen und LockService-Sperren bleiben nicht bestehen Sperrung. Weitere Informationen finden Sie im Leitfaden zur Dialogfeldern und Seitenleisten.

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

Parameter

NameTypBeschreibung
titleStringDer Titel, der über dem Dialogfeld angezeigt werden soll.
promptStringDie Nachricht, die im Dialogfeld angezeigt wird.
buttonsButtonSetDie Schaltfläche, die im Dialogfeld angezeigt werden soll.

Rückflug

PromptResponse: Darstellung der Antwort des Nutzers


showModalDialog(userInterface, title)

Öffnet im Editor des Nutzers ein modales Dialogfeld mit benutzerdefiniertem clientseitigem Inhalt. Diese Methode das serverseitige Skript nicht angehalten werden, während das Dialogfeld geöffnet ist. Um mit dem serverseitiges Skript verwendet die clientseitige Komponente asynchrone Callbacks mithilfe der google.script API für HtmlService. Dialogfeld schließen rufen Sie google.script.host.close() auf der Clientseite von HtmlService im Web Weitere Informationen finden Sie im Leitfaden zu Dialogfeldern und Seitenleisten.

Modale Dialogfelder verhindern, dass der Nutzer mit anderen als dem Dialogfeld interagiert. Von können Nutzer mit modelosen Dialogfeldern und Seitenleisten mit dem Editor interagieren. In fast allen Fällen ist ein modales Dialogfeld oder die Seitenleiste besser geeignet als ein Dialogfeld ohne Modus.

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

Parameter

NameTypBeschreibung
userInterfaceObjectEin HtmlOutput die die anzuzeigende Schnittstelle darstellt.
titleStringDer Titel des Dialogfelds. überschreibt alle festgelegten Titel durch Aufrufen von setTitle() am Das userInterface-Objekt.

Autorisierung

Skripts, die diese Methode verwenden, erfordern eine Autorisierung mit einem oder mehreren der folgenden Bereiche:

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

showModelessDialog(userInterface, title)

Öffnet im Editor des Nutzers ein Dialogfeld ohne Modus mit benutzerdefiniertem clientseitigem Inhalt. Diese Methode das serverseitige Skript nicht anhält, während das Dialogfeld geöffnet ist. Um zu kommunizieren mit Das serverseitige Skript muss die clientseitige Komponente mithilfe der google.script API für HtmlService asynchrone Callbacks durchführen. So schließen Sie das Dialogfeld: rufen Sie google.script.host.close() auf der Clientseite von HtmlService im Web Weitere Informationen finden Sie im Leitfaden zu Dialogfeldern und Seitenleisten.

Bei moduslosen Dialogfeldern kann der Nutzer mit dem Editor hinter dem Dialogfeld interagieren. Im Gegensatz dazu modale Dialogfelder hingegen nicht. In fast allen Fällen wird ein modales Fenster Seitenleiste ist besser als ein Dialogfeld ohne Modus.

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

Parameter

NameTypBeschreibung
userInterfaceObjectEin HtmlOutput die die anzuzeigende Schnittstelle darstellt.
titleStringDer Titel des Dialogfelds. überschreibt alle festgelegten Titel durch Aufrufen von setTitle() am Das userInterface-Objekt.

Autorisierung

Skripts, die diese Methode verwenden, erfordern eine Autorisierung mit einem oder mehreren der folgenden Bereiche:

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

showSidebar(userInterface)

Öffnet im Editor des Nutzers eine Seitenleiste mit benutzerdefiniertem clientseitigem Inhalt. Diese Methode nicht sperren, während die Seitenleiste geöffnet ist. Um mit dem serverseitiges Skript verwendet die clientseitige Komponente asynchrone Callbacks mithilfe der google.script API für HtmlService. Seitenleiste schließen rufen Sie google.script.host.close() auf der Clientseite von HtmlService im Web Weitere Informationen finden Sie im Leitfaden zu Dialogfeldern und Seitenleisten.

Die Seitenleiste wird auf der rechten Seite des Editors angezeigt, wenn Nutzer in deren Umgebungen eine und auf der linken Seite des Editors für linksläufige Sprachen. Alle durch Skripts dargestellte Seitenleisten sind 300 Pixel breit.

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

Parameter

NameTypBeschreibung
userInterfaceObjectEin HtmlOutput die die anzuzeigende Schnittstelle darstellt.

Autorisierung

Skripts, die diese Methode verwenden, erfordern eine Autorisierung mit einem oder mehreren der folgenden Bereiche:

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

Verworfene Methoden