Một thực thể của môi trường giao diện người dùng cho một Ứng dụng Google cho phép tập lệnh thêm như trình đơn, hộp thoại và thanh bên. Một tập lệnh chỉ có thể tương tác với giao diện người dùng cho thực thể hiện tại của trình chỉnh sửa đang mở và chỉ khi tập lệnh giới hạn vùng chứa đối với trình chỉnh sửa.
// 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.'); }
Thuộc tính
Thuộc tính | Loại | Mô tả |
---|---|---|
Button | Button | Một enum đại diện cho các nút hộp thoại được bản địa hoá, được xác định trước do một cảnh báo hoặc PromptResponse.getSelectedButton() trả về để cho biết
nút nào trong hộp thoại mà người dùng đã nhấp vào. |
ButtonSet | ButtonSet | Một enum đại diện cho nhóm một hoặc nhiều nút hộp thoại được bản địa hoá, được xác định trước mà có thể đã thêm vào thông báo hoặc lời nhắc. |
Phương thức
Phương thức | Loại dữ liệu trả về | Mô tả ngắn |
---|---|---|
alert(prompt) | Button | Mở hộp thoại trong trình chỉnh sửa của người dùng với thông báo cho sẵn và nút "OK" . |
alert(prompt, buttons) | Button | Mở hộp thoại trong trình chỉnh sửa của người dùng với thông báo và một bộ nút cụ thể. |
alert(title, prompt, buttons) | Button | Mở hộp thoại trong trình chỉnh sửa của người dùng với tiêu đề, thông báo và bộ nút cho sẵn. |
createAddonMenu() | Menu | Tạo một trình tạo có thể dùng để chèn trình đơn phụ vào trình đơn Tiện ích của trình chỉnh sửa. |
createMenu(caption) | Menu | Tạo một trình tạo có thể dùng để thêm trình đơn vào giao diện người dùng của trình chỉnh sửa. |
prompt(prompt) | PromptResponse | Mở hộp thoại nhập dữ liệu trong trình chỉnh sửa của người dùng với thông báo cho sẵn và nút "OK" . |
prompt(prompt, buttons) | PromptResponse | Mở hộp thoại nhập dữ liệu trong trình chỉnh sửa của người dùng với thông báo và một bộ nút cụ thể. |
prompt(title, prompt, buttons) | PromptResponse | Mở hộp thoại nhập dữ liệu trong trình chỉnh sửa của người dùng với tiêu đề, thông báo và tập hợp các nút. |
showModalDialog(userInterface, title) | void | Mở hộp thoại cửa sổ phụ trong trình chỉnh sửa của người dùng có nội dung tuỳ chỉnh phía máy khách. |
showModelessDialog(userInterface, title) | void | Mở một hộp thoại không chế độ trong trình chỉnh sửa của người dùng bằng nội dung tuỳ chỉnh phía máy khách. |
showSidebar(userInterface) | void | Mở một thanh bên trong trình chỉnh sửa của người dùng bằng nội dung phía máy khách tuỳ chỉnh. |
Tài liệu chi tiết
alert(prompt)
Mở hộp thoại trong trình chỉnh sửa của người dùng với thông báo cho sẵn và nút "OK" . Phương thức này
tạm ngưng tập lệnh phía máy chủ trong khi hộp thoại đang mở. Tập lệnh sẽ tiếp tục sau khi người dùng
đóng hộp thoại, nhưng Jdbc
kết nối và LockService
khoá không
được duy trì trong quá trình tạm ngưng. Để biết thêm thông tin, hãy xem hướng dẫn về hộp thoại và thanh bên.
// 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');
Tham số
Tên | Loại | Mô tả |
---|---|---|
prompt | String | Thông báo xuất hiện trong hộp thoại. |
Cầu thủ trả bóng
Button
– Nút mà người dùng đã nhấp vào.
alert(prompt, buttons)
Mở hộp thoại trong trình chỉnh sửa của người dùng với thông báo và một bộ nút cụ thể. Phương thức này
tạm ngưng tập lệnh phía máy chủ trong khi hộp thoại đang mở. Tập lệnh sẽ tiếp tục sau khi người dùng
đóng hộp thoại, nhưng Jdbc
kết nối và LockService
khoá không
được duy trì trong quá trình tạm ngưng. Để biết thêm thông tin, hãy xem hướng dẫn về hộp thoại và thanh bên.
// 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.'); }
Tham số
Tên | Loại | Mô tả |
---|---|---|
prompt | String | Thông báo xuất hiện trong hộp thoại. |
buttons | ButtonSet | Nút này được đặt để hiển thị trong hộp thoại. |
Cầu thủ trả bóng
Button
– Nút mà người dùng đã nhấp vào.
alert(title, prompt, buttons)
Mở hộp thoại trong trình chỉnh sửa của người dùng với tiêu đề, thông báo và một bộ nút cho sẵn. Chiến dịch này
sẽ tạm ngưng tập lệnh phía máy chủ trong khi hộp thoại đang mở. Tập lệnh sẽ tiếp tục sau
người dùng đóng hộp thoại, nhưng Jdbc
kết nối và LockService
khoá không
được duy trì trong quá trình tạm ngưng. Để biết thêm thông tin, hãy xem hướng dẫn về hộp thoại và thanh bên.
// 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.'); }
Tham số
Tên | Loại | Mô tả |
---|---|---|
title | String | Tiêu đề xuất hiện ở phía trên hộp thoại. |
prompt | String | Thông báo xuất hiện trong hộp thoại. |
buttons | ButtonSet | Nút này được đặt để hiển thị trong hộp thoại. |
Cầu thủ trả bóng
Button
– Nút mà người dùng đã nhấp vào.
createAddonMenu()
Tạo một trình tạo có thể dùng để chèn trình đơn phụ vào trình đơn Tiện ích của trình chỉnh sửa. Chiến lược phát hành đĩa đơn
trình đơn không được cập nhật cho đến khi Menu.addToUi()
được gọi. Nếu tập lệnh đang chạy
ở dạng tiện ích bổ sung, tên trình đơn phụ khớp với tên của tiện ích bổ sung trong cửa hàng trực tuyến; nếu tập lệnh liên kết trực tiếp với tài liệu, tên của trình đơn phụ
khớp với tên của tập lệnh. Để biết thêm thông tin, hãy xem hướng dẫn chuyển đến trình đơn.
// 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(); }
Cầu thủ trả bóng
Menu
– Trình tạo trình đơn mới.
createMenu(caption)
Tạo một trình tạo có thể dùng để thêm trình đơn vào giao diện người dùng của trình chỉnh sửa. Trình đơn không
thực sự được thêm vào cho đến khi Menu.addToUi()
được gọi. Để biết thêm thông tin, hãy xem hướng dẫn chuyển đến trình đơn. Nhãn cho trình đơn cấp cao nhất phải là
trong chữ hoa dòng tiêu đề (tất cả các từ chính đều viết hoa), mặc dù nhãn của trình đơn phụ phải ở
viết hoa đầu câu (chỉ viết hoa chữ cái đầu tiên). Nếu tập lệnh được xuất bản dưới dạng tiện ích bổ sung, tham số caption
sẽ bị bỏ qua và
được thêm dưới dạng trình đơn phụ của trình đơn Tiện ích, tương đương với 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(); }
Tham số
Tên | Loại | Mô tả |
---|---|---|
caption | String | Nhãn của thực đơn, trong đó có tất cả các từ chính được viết hoa biểu thị một trình đơn cấp cao nhất, hoặc chỉ viết hoa từ đầu tiên đối với trình đơn phụ. |
Cầu thủ trả bóng
Menu
– Trình tạo trình đơn mới.
prompt(prompt)
Mở hộp thoại nhập dữ liệu trong trình chỉnh sửa của người dùng với thông báo cho sẵn và nút "OK" . Chiến dịch này
sẽ tạm ngưng tập lệnh phía máy chủ trong khi hộp thoại đang mở. Tập lệnh sẽ tiếp tục sau
người dùng đóng hộp thoại, nhưng Jdbc
kết nối và LockService
khoá không
được duy trì trong quá trình tạm ngưng. Để biết thêm thông tin, hãy xem hướng dẫn về hộp thoại và thanh bên.
// 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.'); }
Tham số
Tên | Loại | Mô tả |
---|---|---|
prompt | String | Thông báo xuất hiện trong hộp thoại. |
Cầu thủ trả bóng
PromptResponse
– Thể hiện phản hồi của người dùng.
prompt(prompt, buttons)
Mở hộp thoại nhập dữ liệu trong trình chỉnh sửa của người dùng với thông báo và một bộ nút cụ thể. Chiến dịch này
sẽ tạm ngưng tập lệnh phía máy chủ trong khi hộp thoại đang mở. Tập lệnh sẽ tiếp tục sau
người dùng đóng hộp thoại, nhưng Jdbc
kết nối và LockService
khoá không
được duy trì trong quá trình tạm ngưng. Để biết thêm thông tin, hãy xem hướng dẫn về hộp thoại và thanh bên.
// 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.'); }
Tham số
Tên | Loại | Mô tả |
---|---|---|
prompt | String | Thông báo xuất hiện trong hộp thoại. |
buttons | ButtonSet | Nút này được đặt để hiển thị trong hộp thoại. |
Cầu thủ trả bóng
PromptResponse
– Thể hiện phản hồi của người dùng.
prompt(title, prompt, buttons)
Mở hộp thoại nhập dữ liệu trong trình chỉnh sửa của người dùng với tiêu đề, thông báo và tập hợp
các nút. Phương thức này sẽ tạm ngưng tập lệnh phía máy chủ trong khi hộp thoại đang mở. Kịch bản
tiếp tục sau khi người dùng đóng hộp thoại, nhưng các kết nối Jdbc
và khoá LockService
không tồn tại trên
. Để biết thêm thông tin, hãy xem hướng dẫn để
hộp thoại và thanh bên.
// 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.'); }
Tham số
Tên | Loại | Mô tả |
---|---|---|
title | String | Tiêu đề xuất hiện ở phía trên hộp thoại. |
prompt | String | Thông báo xuất hiện trong hộp thoại. |
buttons | ButtonSet | Nút này được đặt để hiển thị trong hộp thoại. |
Cầu thủ trả bóng
PromptResponse
– Thể hiện phản hồi của người dùng.
showModalDialog(userInterface, title)
Mở hộp thoại cửa sổ phụ trong trình chỉnh sửa của người dùng có nội dung tuỳ chỉnh phía máy khách. Phương thức này
không tạm ngưng tập lệnh phía máy chủ trong khi hộp thoại đang mở. Để giao tiếp với
tập lệnh phía máy chủ, thành phần phía máy khách phải thực hiện các lệnh gọi lại không đồng bộ bằng cách sử dụng API google.script
cho HtmlService
. Để đóng hộp thoại
theo phương thức lập trình, hãy gọi
google.script.host.close()
ở phía máy khách của trang web HtmlService
. Để biết thêm thông tin, hãy xem hướng dẫn tạo hộp thoại và
thanh bên.
Hộp thoại mô-đun ngăn người dùng tương tác với bất kỳ nội dung nào khác ngoài hộp thoại. Theo thì hộp thoại không chế độ và thanh bên cho phép người dùng tương tác với trình chỉnh sửa. Trong hầu hết các trường hợp, hộp thoại phương thức hoặc thanh bên là lựa chọn tốt hơn so với hộp thoại không có chế độ.
// 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');
Tham số
Tên | Loại | Mô tả |
---|---|---|
userInterface | Object | HtmlOutput
biểu thị giao diện cần hiển thị. |
title | String | Tiêu đề của hộp thoại; ghi đè mọi tiêu đề được đặt bằng cách gọi setTitle() trên
đối tượng userInterface . |
Ủy quyền
Tập lệnh sử dụng phương thức này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/script.container.ui
showModelessDialog(userInterface, title)
Mở một hộp thoại không chế độ trong trình chỉnh sửa của người dùng bằng nội dung tuỳ chỉnh phía máy khách. Phương thức này
không tạm ngưng tập lệnh phía máy chủ trong khi hộp thoại đang mở. Để giao tiếp với
tập lệnh phía máy chủ, thành phần phía máy khách phải thực hiện các lệnh gọi lại không đồng bộ bằng API google.script
cho HtmlService
. Để đóng hộp thoại
theo phương thức lập trình, hãy gọi
google.script.host.close()
ở phía máy khách của trang web HtmlService
. Để biết thêm thông tin, hãy xem hướng dẫn tạo hộp thoại và
thanh bên.
Hộp thoại không chế độ cho phép người dùng tương tác với trình chỉnh sửa ở phía sau hộp thoại đó. Ngược lại, hộp thoại phương thức thì không. Trong hầu hết các trường hợp, phương thức hộp thoại hoặc thanh bên là lựa chọn tốt hơn so với hộp thoại không chế độ.
// 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');
Tham số
Tên | Loại | Mô tả |
---|---|---|
userInterface | Object | HtmlOutput
biểu thị giao diện cần hiển thị. |
title | String | Tiêu đề của hộp thoại; ghi đè mọi tiêu đề được đặt bằng cách gọi setTitle() trên
đối tượng userInterface . |
Ủy quyền
Tập lệnh sử dụng phương thức này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/script.container.ui
showSidebar(userInterface)
Mở một thanh bên trong trình chỉnh sửa của người dùng bằng nội dung phía máy khách tuỳ chỉnh. Phương thức này
không tạm ngưng tập lệnh phía máy chủ trong khi thanh bên đang mở. Để giao tiếp với
tập lệnh phía máy chủ, thành phần phía máy khách phải thực hiện các lệnh gọi lại không đồng bộ bằng cách sử dụng API google.script
cho HtmlService
. Để đóng thanh bên
theo phương thức lập trình, hãy gọi
google.script.host.close()
ở phía máy khách của trang web HtmlService
. Để biết thêm thông tin, hãy xem hướng dẫn tạo hộp thoại và
thanh bên.
Thanh bên hiển thị ở phía bên phải của trình chỉnh sửa đối với người dùng có môi trường sử dụng ngôn ngữ từ trái sang phải và ở bên trái của trình chỉnh sửa đối với các ngôn ngữ từ phải sang trái. Tất cả thanh bên do tập lệnh hiển thị rộng 300 pixel.
// 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);
Tham số
Tên | Loại | Mô tả |
---|---|---|
userInterface | Object | HtmlOutput
biểu thị giao diện cần hiển thị. |
Ủy quyền
Tập lệnh sử dụng phương thức này yêu cầu ủy quyền với một hoặc nhiều phạm vi sau:
-
https://www.googleapis.com/auth/script.container.ui