Gli script possono estendere determinati prodotti Google aggiungendo elementi dell'interfaccia utente che, quando vengono selezionati, eseguono una funzione Apps Script. L'esempio più comune è l'esecuzione di uno script da una voce di menu personalizzata in Documenti, Fogli, Presentazioni o Moduli Google, ma le funzioni dello script possono essere attivate anche facendo clic su immagini e disegni in Fogli Google.
Menu personalizzati in Documenti, Fogli, Presentazioni o Moduli Google
Apps Script può aggiungere nuovi menu in Documenti, Fogli, Presentazioni o Moduli Google, con ogni voce di menu collegata a una funzione in uno script. In Moduli Google, i menu personalizzati sono visibili solo a un editor che apre il modulo per modificarlo, non a un utente che lo apre per rispondere.
Uno script può creare un menu solo se è
associato al documento, al foglio di lavoro o al modulo.
Per visualizzare il menu quando l'utente apre un file, scrivi il codice del menu all'interno di una funzione
onOpen()
.
L'esempio seguente mostra come aggiungere un menu
con un elemento, seguito da un
separatore visivo, quindi un
sottomenu che contiene
un altro elemento. Tieni presente che in Fogli Google, a meno che tu non stia utilizzando la
nuova versione, devi utilizzare la
sintassi
addMenu()
e i sottomenu non sono possibili. Quando l'utente seleziona una delle voci di menu, una funzione corrispondente apre una finestra di dialogo di avviso. Per maggiori
informazioni sui tipi di finestre di dialogo che puoi aprire, consulta la
guida alle finestre di dialogo e alle barre laterali.
function onOpen() {
var ui = SpreadsheetApp.getUi();
// Or DocumentApp, SlidesApp or FormApp.
ui.createMenu('Custom Menu')
.addItem('First item', 'menuItem1')
.addSeparator()
.addSubMenu(ui.createMenu('Sub-menu')
.addItem('Second item', 'menuItem2'))
.addToUi();
}
function menuItem1() {
SpreadsheetApp.getUi() // Or DocumentApp, SlidesApp or FormApp.
.alert('You clicked the first menu item!');
}
function menuItem2() {
SpreadsheetApp.getUi() // Or DocumentApp, SlidesApp or FormApp.
.alert('You clicked the second menu item!');
}
Un documento, un foglio di lavoro, una presentazione o un modulo può contenere un solo menu con
un determinato nome. Se lo stesso script o un altro script aggiunge un menu con lo stesso
nome, il nuovo menu sostituisce quello precedente. I menu non possono essere rimossi mentre il file è aperto, anche se puoi scrivere la funzione onOpen()
per saltare il menu in futuro se è impostata una determinata proprietà.
Immagini e disegni cliccabili in Fogli Google
Puoi anche assegnare una funzione Apps Script a un'immagine o a un disegno in Fogli Google, a condizione che lo script sia associato al foglio di lavoro. L'esempio seguente mostra come configurarlo.
- In Fogli Google, seleziona la voce di menu Estensioni > Apps Script per creare uno script associato al foglio di lavoro.
Elimina qualsiasi codice nell'editor di script e incolla il codice riportato di seguito.
function showMessageBox() { Browser.msgBox('You clicked it!'); }
Torna a Fogli e inserisci un'immagine o un disegno selezionando Inserisci > Immagine o Inserisci > Disegno.
Dopo aver inserito l'immagine o il disegno, fai clic. Nell'angolo in alto a destra viene visualizzato un piccolo selettore di menu a discesa. Fai clic e scegli Assegna copione.
Nella finestra di dialogo visualizzata, digita il nome della funzione Apps Script che vuoi eseguire, senza parentesi. In questo caso,
showMessageBox
. Fai clic su Ok.Fai di nuovo clic sull'immagine o sul disegno. Ora la funzione viene eseguita.