สำหรับส่วนเสริมของ Editor ส่วนใหญ่ กล่องโต้ตอบและแผงแถบด้านข้างเป็นอินเทอร์เฟซผู้ใช้หลักของส่วนเสริม ทั้ง 2 อย่างนี้ปรับแต่งได้อย่างเต็มที่ โดยใช้ HTML และ CSS มาตรฐาน และคุณสามารถใช้ โมเดลการสื่อสารแบบไคลเอ็นต์-เซิร์ฟเวอร์ ของ Google Apps Script เพื่อเรียกใช้ฟังก์ชัน Apps Script เมื่อผู้ใช้โต้ตอบกับ แถบด้านข้างหรือกล่องโต้ตอบ ส่วนเสริมสามารถกำหนดแถบด้านข้างและกล่องโต้ตอบได้หลายรายการ แต่จะแสดงได้ครั้งละ 1 รายการเท่านั้น
หากต้องการป้องกันไม่ให้ผู้ใช้โต้ตอบกับ Editor จนกว่าจะเลือกตัวเลือกบางอย่างในอินเทอร์เฟซของส่วนเสริม ให้ใช้กล่องโต้ตอบ แต่หากไม่เป็นเช่นนั้น ให้ใช้แถบด้านข้าง
กล่องโต้ตอบ
กล่องโต้ตอบ คือแผงหน้าต่างที่ซ้อนทับเนื้อหาหลักของ Editor กล่องโต้ตอบของ Apps Script เป็นแบบโมดัล ซึ่งหมายความว่าขณะที่กล่องโต้ตอบเปิดอยู่ ผู้ใช้จะไม่สามารถโต้ตอบกับองค์ประกอบอื่นๆ ของอินเทอร์เฟซ Editor ได้ คุณสามารถปรับแต่งเนื้อหาและขนาดของกล่องโต้ตอบได้
คุณสร้างกล่องโต้ตอบของส่วนเสริมด้วยวิธีเดียวกับ Apps Script กล่องโต้ตอบที่กำหนดเอง ขั้นตอนทั่วไปมีดังนี้
- สร้างไฟล์โปรเจ็กต์สคริปต์ที่กำหนดโครงสร้าง HTML, CSS และลักษณะการทำงานของ JavaScript ฝั่งไคลเอ็นต์ของกล่องโต้ตอบ ดูหลักเกณฑ์ด้านรูปแบบของส่วนเสริมของ Editor
- ในโค้ดฝั่งเซิร์ฟเวอร์ที่คุณต้องการให้กล่องโต้ตอบเปิดขึ้น ให้เรียกใช้
HtmlService.createHtmlOutputFromFileเพื่อสร้างออบเจ็กต์HtmlOutputที่แสดงกล่องโต้ตอบ หรือหากใช้ HTML ที่มีเทมเพลต คุณสามารถเรียกใช้HtmlService.createTemplateFromFileเพื่อสร้างเทมเพลต แล้วเรียกใช้HtmlTemplate.evaluateเพื่อแปลงเทมเพลตเป็นออบเจ็กต์HtmlOutput - เรียกใช้
Ui.showModalDialogเพื่อแสดงกล่องโต้ตอบโดยใช้HtmlOutput
กล่องโต้ตอบจะไม่ระงับสคริปต์ฝั่งเซิร์ฟเวอร์ขณะที่เปิดอยู่ JavaScript ฝั่งไคลเอ็นต์สามารถเรียกใช้ฝั่งเซิร์ฟเวอร์แบบไม่พร้อมกันได้
โดยใช้ google.script.run และ
ฟังก์ชันตัวแฮนเดิลที่เกี่ยวข้อง ดูรายละเอียดเพิ่มเติมได้ที่
การสื่อสารจากไคลเอ็นต์ไปยังเซิร์ฟเวอร์
กล่องโต้ตอบการเปิดไฟล์
กล่องโต้ตอบการเปิดไฟล์ เป็นกล่องโต้ตอบที่สร้างไว้ล่วงหน้าซึ่งช่วยให้ผู้ใช้เลือกไฟล์จาก Google ไดรฟ์ได้ คุณสามารถเพิ่มกล่องโต้ตอบการเปิดไฟล์ลงในส่วนเสริมได้โดยไม่ต้องออกแบบ แต่ต้องมีการกำหนดค่าเพิ่มเติม นอกจากนี้ คุณยังต้องมีสิทธิ์เข้าถึง โปรเจ็กต์ Cloud Platform ของส่วนเสริม เพื่อเปิดใช้ Google Picker API
ดูข้อมูลเพิ่มเติมได้ที่ กล่องโต้ตอบการเปิดไฟล์
แถบด้านข้าง
แถบด้านข้าง คือแผงที่ปรากฏทางด้านขวาของอินเทอร์เฟซ Editor และเป็นอินเทอร์เฟซส่วนเสริมประเภทที่พบมากที่สุด คุณสามารถโต้ตอบกับองค์ประกอบอื่นๆ ของอินเทอร์เฟซ Editor ต่อไปได้ขณะที่แถบด้านข้างเปิดอยู่ ซึ่งแตกต่างจากกล่องโต้ตอบ แถบด้านข้างมีความกว้างคงที่ แต่คุณสามารถปรับแต่งเนื้อหาได้
คุณสร้างแถบด้านข้างของส่วนเสริมด้วยวิธีเดียวกับ Apps Script แถบด้านข้างที่กำหนดเอง ขั้นตอนทั่วไปมีดังนี้
- สร้างไฟล์โปรเจ็กต์สคริปต์ที่กำหนดโครงสร้าง HTML, CSS และลักษณะการทำงานของ JavaScript ฝั่งไคลเอ็นต์ของแถบด้านข้าง เมื่อกำหนดแถบด้านข้าง ให้ดู ที่ หลักเกณฑ์ด้านรูปแบบของส่วนเสริมของ Editor
ในโค้ดฝั่งเซิร์ฟเวอร์ที่คุณต้องการให้แถบด้านข้างเปิดขึ้น ให้เรียกใช้
HtmlService.createHtmlOutputFromFileเพื่อสร้างออบเจ็กต์HtmlOutputที่แสดงแถบด้านข้าง หรือหากใช้ HTML ที่มีเทมเพลต คุณสามารถเรียกใช้HtmlService.createTemplateFromFileเพื่อสร้างเทมเพลต แล้วเรียกใช้HtmlTemplate.evaluateเพื่อแปลงเทมเพลตเป็นออบเจ็กต์HtmlOutputแถบด้านข้างของส่วนเสริมมีความกว้างคงที่ 300 พิกเซล ซึ่งคุณจะเปลี่ยนไม่ได้โดยการเรียกใช้
HtmlOutput.setWidthเรียกใช้
Ui.showSidebarเพื่อแสดงแถบด้านข้างโดยใช้HtmlOutput
แถบด้านข้างจะไม่ระงับสคริปต์ฝั่งเซิร์ฟเวอร์ขณะที่เปิดอยู่ JavaScript ฝั่งไคลเอ็นต์สามารถเรียกใช้ฝั่งเซิร์ฟเวอร์แบบไม่พร้อมกันได้
โดยใช้ google.script.run และ
ฟังก์ชันตัวแฮนเดิลที่เกี่ยวข้อง ดูรายละเอียดเพิ่มเติมได้ที่
การสื่อสารจากไคลเอ็นต์ไปยังเซิร์ฟเวอร์