Instance lingkungan antarmuka pengguna untuk Aplikasi Google yang memungkinkan skrip menambahkan fitur seperti menu, dialog, dan sidebar. Skrip hanya dapat berinteraksi dengan UI untuk instance editor terbuka saat ini, dan hanya jika skrip terikat penampung ke editor.
// 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.'); }
Properti
Properti | Jenis | Deskripsi |
---|---|---|
Button | Button | Enum yang mewakili tombol dialog yang dilokalkan dan telah ditentukan, yang ditampilkan oleh pemberitahuan atau PromptResponse.getSelectedButton() untuk menunjukkan
tombol mana dalam dialog yang diklik pengguna. |
ButtonSet | ButtonSet | Enum yang mewakili kumpulan satu atau beberapa tombol dialog yang telah ditentukan dan dilokalkan yang dapat ditambahkan ke pemberitahuan atau perintah. |
Metode
Metode | Jenis hasil yang ditampilkan | Deskripsi singkat |
---|---|---|
alert(prompt) | Button | Membuka kotak dialog di editor pengguna dengan pesan yang diberikan dan tombol "OK". |
alert(prompt, buttons) | Button | Membuka kotak dialog di editor pengguna dengan pesan dan kumpulan tombol yang diberikan. |
alert(title, prompt, buttons) | Button | Membuka kotak dialog di editor pengguna dengan judul, pesan, dan kumpulan tombol yang diberikan. |
createAddonMenu() | Menu | Membuat builder yang dapat digunakan untuk menyisipkan submenu ke dalam menu Ekstensi editor. |
createMenu(caption) | Menu | Membuat builder yang dapat digunakan untuk menambahkan menu ke antarmuka pengguna editor. |
prompt(prompt) | PromptResponse | Membuka kotak dialog input di editor pengguna dengan pesan yang diberikan dan tombol "OK". |
prompt(prompt, buttons) | PromptResponse | Membuka kotak dialog input di editor pengguna dengan pesan dan kumpulan tombol yang diberikan. |
prompt(title, prompt, buttons) | PromptResponse | Membuka kotak dialog input di editor pengguna dengan judul, pesan, dan kumpulan tombol yang diberikan. |
showModalDialog(userInterface, title) | void | Membuka kotak dialog modal di editor pengguna dengan konten kustom sisi klien. |
showModelessDialog(userInterface, title) | void | Membuka kotak dialog tanpa mode di editor pengguna dengan konten kustom sisi klien. |
showSidebar(userInterface) | void | Membuka sidebar di editor pengguna dengan konten kustom sisi klien. |
Dokumentasi mendetail
alert(prompt)
Membuka kotak dialog di editor pengguna dengan pesan yang diberikan dan tombol "OK". Metode ini menangguhkan skrip sisi server saat dialog terbuka. Skrip dilanjutkan setelah pengguna
menutup dialog, tetapi koneksi Jdbc
dan kunci LockService
tidak
bertahan selama penangguhan. Untuk mengetahui informasi selengkapnya, lihat panduan untuk dialog dan sidebar.
// 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
Nama | Jenis | Deskripsi |
---|---|---|
prompt | String | Pesan yang akan ditampilkan di kotak dialog. |
Return
Button
— Tombol yang diklik pengguna.
alert(prompt, buttons)
Membuka kotak dialog di editor pengguna dengan pesan dan kumpulan tombol yang diberikan. Metode ini menangguhkan skrip sisi server saat dialog terbuka. Skrip dilanjutkan setelah pengguna
menutup dialog, tetapi koneksi Jdbc
dan kunci LockService
tidak
bertahan selama penangguhan. Untuk mengetahui informasi selengkapnya, lihat panduan untuk dialog dan sidebar.
// 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
Nama | Jenis | Deskripsi |
---|---|---|
prompt | String | Pesan yang akan ditampilkan di kotak dialog. |
buttons | ButtonSet | Tombol yang disetel untuk ditampilkan di kotak dialog. |
Return
Button
— Tombol yang diklik pengguna.
alert(title, prompt, buttons)
Membuka kotak dialog di editor pengguna dengan judul, pesan, dan kumpulan tombol yang diberikan. Metode
ini menangguhkan skrip sisi server saat dialog terbuka. Skrip dilanjutkan setelah
pengguna menutup dialog, tetapi koneksi Jdbc
dan kunci LockService
tidak
bertahan selama penangguhan. Untuk mengetahui informasi selengkapnya, lihat panduan untuk dialog dan sidebar.
// 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
Nama | Jenis | Deskripsi |
---|---|---|
title | String | Judul yang akan ditampilkan di atas kotak dialog. |
prompt | String | Pesan yang akan ditampilkan di kotak dialog. |
buttons | ButtonSet | Tombol yang disetel untuk ditampilkan di kotak dialog. |
Return
Button
— Tombol yang diklik pengguna.
createAddonMenu()
Membuat builder yang dapat digunakan untuk menyisipkan submenu ke dalam menu Ekstensi editor. Menu
tidak benar-benar diperbarui hingga Menu.addToUi()
dipanggil. Jika skrip dijalankan sebagai add-on, nama sub-menu cocok dengan nama add-on di web store. Jika skrip terikat ke dokumen secara langsung, nama sub-menu akan cocok dengan nama skrip. Untuk informasi selengkapnya, lihat panduan 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(); }
Return
Menu
— Pembuat menu baru.
createMenu(caption)
Membuat builder yang dapat digunakan untuk menambahkan menu ke antarmuka pengguna editor. Menu tidak
benar-benar ditambahkan hingga Menu.addToUi()
dipanggil. Untuk informasi selengkapnya, lihat panduan menu. Label untuk menu tingkat atas harus menggunakan kapitalisasi judul (semua kata utama menggunakan huruf besar), meskipun label untuk sub-menu harus dalam kapitalisasi kalimat (hanya kata pertama yang ditulis dengan huruf kapital). Jika skrip dipublikasikan sebagai add-on, parameter caption
akan diabaikan dan menu akan ditambahkan sebagai sub-menu dari menu Ekstensi, yang setara dengan 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
Nama | Jenis | Deskripsi |
---|---|---|
caption | String | Label untuk menu, dengan semua kata utama menggunakan huruf besar untuk menu tingkat atas, atau hanya kata pertama yang ditulis dengan huruf kapital untuk sub-menu. |
Return
Menu
— Pembuat menu baru.
prompt(prompt)
Membuka kotak dialog input di editor pengguna dengan pesan yang diberikan dan tombol "OK". Metode
ini menangguhkan skrip sisi server saat dialog terbuka. Skrip dilanjutkan setelah
pengguna menutup dialog, tetapi koneksi Jdbc
dan kunci LockService
tidak
bertahan selama penangguhan. Untuk mengetahui informasi selengkapnya, lihat panduan untuk dialog dan sidebar.
// 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
Nama | Jenis | Deskripsi |
---|---|---|
prompt | String | Pesan yang akan ditampilkan di kotak dialog. |
Return
PromptResponse
— Representasi respons pengguna.
prompt(prompt, buttons)
Membuka kotak dialog input di editor pengguna dengan pesan dan kumpulan tombol yang diberikan. Metode
ini menangguhkan skrip sisi server saat dialog terbuka. Skrip dilanjutkan setelah
pengguna menutup dialog, tetapi koneksi Jdbc
dan kunci LockService
tidak
bertahan selama penangguhan. Untuk mengetahui informasi selengkapnya, lihat panduan untuk dialog dan sidebar.
// 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
Nama | Jenis | Deskripsi |
---|---|---|
prompt | String | Pesan yang akan ditampilkan di kotak dialog. |
buttons | ButtonSet | Tombol yang disetel untuk ditampilkan di kotak dialog. |
Return
PromptResponse
— Representasi respons pengguna.
prompt(title, prompt, buttons)
Membuka kotak dialog input di editor pengguna dengan judul, pesan, dan kumpulan
tombol yang diberikan. Metode ini menangguhkan skrip sisi server saat dialog terbuka. Skrip
dilanjutkan setelah pengguna menutup dialog, tetapi koneksi Jdbc
dan penguncian LockService
tidak akan dipertahankan selama
penangguhan. Untuk mengetahui informasi selengkapnya, lihat panduan
dialog dan sidebar.
// 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
Nama | Jenis | Deskripsi |
---|---|---|
title | String | Judul yang akan ditampilkan di atas kotak dialog. |
prompt | String | Pesan yang akan ditampilkan di kotak dialog. |
buttons | ButtonSet | Tombol yang disetel untuk ditampilkan di kotak dialog. |
Return
PromptResponse
— Representasi respons pengguna.
showModalDialog(userInterface, title)
Membuka kotak dialog modal di editor pengguna dengan konten kustom sisi klien. Metode ini tidak menangguhkan skrip sisi server saat dialog terbuka. Untuk berkomunikasi dengan
skrip sisi server, komponen sisi klien harus membuat callback asinkron menggunakan google.script
API untuk HtmlService
. Untuk menutup dialog
secara terprogram, panggil
google.script.host.close()
di sisi klien aplikasi web HtmlService
. Untuk mengetahui informasi selengkapnya, lihat panduan untuk dialog dan
sidebar.
Dialog modal mencegah pengguna berinteraksi dengan hal lain selain dialog. Dengan kontras, dialog tanpa mode dan sidebar memungkinkan pengguna berinteraksi dengan editor. Dalam hampir semua kasus, dialog modal atau sidebar adalah pilihan yang lebih baik daripada dialog tanpa mode.
// 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
Nama | Jenis | Deskripsi |
---|---|---|
userInterface | Object | HtmlOutput
yang mewakili antarmuka yang akan ditampilkan. |
title | String | Judul dialog; mengganti judul apa pun yang ditetapkan dengan memanggil setTitle() pada objek userInterface . |
Otorisasi
Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:
-
https://www.googleapis.com/auth/script.container.ui
showModelessDialog(userInterface, title)
Membuka kotak dialog tanpa mode di editor pengguna dengan konten kustom sisi klien. Metode ini tidak menangguhkan skrip sisi server saat dialog terbuka. Untuk berkomunikasi dengan
skrip sisi server, komponen sisi klien harus membuat callback asinkron menggunakan google.script
API untuk HtmlService
. Untuk menutup dialog
secara terprogram, panggil
google.script.host.close()
di sisi klien aplikasi web HtmlService
. Untuk mengetahui informasi selengkapnya, lihat panduan untuk dialog dan
sidebar.
Dialog tanpa mode memungkinkan pengguna berinteraksi dengan editor di balik dialog. Sebaliknya, dialog modal tidak demikian. Dalam hampir semua kasus, dialog modal atau sidebar adalah pilihan yang lebih baik daripada dialog tanpa mode.
// 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
Nama | Jenis | Deskripsi |
---|---|---|
userInterface | Object | HtmlOutput
yang mewakili antarmuka yang akan ditampilkan. |
title | String | Judul dialog; mengganti judul apa pun yang ditetapkan dengan memanggil setTitle() pada objek userInterface . |
Otorisasi
Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:
-
https://www.googleapis.com/auth/script.container.ui
showSidebar(userInterface)
Membuka sidebar di editor pengguna dengan konten kustom sisi klien. Metode ini
tidak menangguhkan skrip sisi server saat sidebar terbuka. Untuk berkomunikasi dengan
skrip sisi server, komponen sisi klien harus membuat callback asinkron menggunakan google.script
API untuk HtmlService
. Untuk menutup sidebar
secara terprogram, panggil
google.script.host.close()
di sisi klien aplikasi web HtmlService
. Untuk mengetahui informasi selengkapnya, lihat panduan untuk dialog dan
sidebar.
Sidebar ditampilkan di sisi kanan editor untuk pengguna yang lingkungannya menggunakan bahasa yang ditulis dari kiri-ke-kanan dan di sisi kiri editor untuk bahasa yang ditulis dari kanan-ke-kiri. Semua sidebar yang ditampilkan oleh skrip memiliki lebar 300 piksel.
// 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
Nama | Jenis | Deskripsi |
---|---|---|
userInterface | Object | HtmlOutput
yang mewakili antarmuka yang akan ditampilkan. |
Otorisasi
Skrip yang menggunakan metode ini memerlukan otorisasi dengan satu atau beberapa cakupan berikut:
-
https://www.googleapis.com/auth/script.container.ui