การเลือกคือสิ่งที่เลือกอยู่ในหน้างานนำเสนอที่เปิดอยู่ เช่น ส่วนของข้อความที่ไฮไลต์หรือตาราง คู่มือนี้จะบอกวิธีรับและตั้งค่าการเลือกในการแสดงข้อมูลที่ใช้งานอยู่โดยใช้ Apps Script
การเลือกคือภาพรวมของสิ่งที่เป็นอยู่เมื่อสคริปต์เริ่มต้น หากผู้ใช้คลิกและการเลือกมีการเปลี่ยนแปลงขณะที่สคริปต์ทำงานอยู่ การเปลี่ยนแปลงเหล่านั้นจะไม่แสดง
การเลือกและประเภทการเลือก
คุณสามารถอ่านส่วนที่เลือกได้โดยใช้คลาส Selection คลาสนี้มีเมธอดต่างๆ ในการรับออบเจ็กต์ที่เลือกตามประเภทของออบเจ็กต์ที่เลือก
อาร์เรย์ค่าคงที่ SelectionType แสดงออบเจ็กต์ที่เลือกประเภทหนึ่งๆ ตัวอย่างเช่น หากผู้ใช้เลือกข้อความบางส่วนในรูปร่าง ประเภทการเลือกจะเป็น TEXT ในกรณีนี้ คุณสามารถเรียกข้อมูลช่วงข้อความที่เลือกได้โดยใช้เมธอด
selection.getTextRange()
นอกจากนี้ คุณยังเรียกข้อมูลออบเจ็กต์ที่มีการเลือกได้ด้วย โดยต่อจากตัวอย่างข้างต้น คุณสามารถเรียกข้อมูลรูปร่างที่มีข้อความที่เลือกโดยใช้ selection.getPageElementRange().getPageElements()[0]
ในทํานองเดียวกัน หน้าที่มีรูปร่างล้อมรอบคือหน้าปัจจุบันที่ใช้งานอยู่ หากต้องการเรียกหน้านั้น ให้ใช้ selection.getCurrentPage()
การอ่านสิ่งที่เลือก
หากต้องการอ่านส่วนที่เลือก ให้ใช้เมธอด Presentation.getSelection() ดังที่แสดงในตัวอย่างต่อไปนี้
การอ่านหน้าปัจจุบัน
หากต้องการดึงข้อมูลหน้าปัจจุบันที่ผู้ใช้กําลังดู ให้ใช้เมธอด getSelection() และ getCurrentPage() ดังนี้
โปรดทราบว่าหน้าปัจจุบันอาจเป็นหน้าประเภทใดประเภทหนึ่งต่อไปนี้
หน้าปัจจุบันสามารถเลือกออบเจ็กต์ได้อย่างน้อย 1 รายการ และ SelectionType จะกำหนดประเภทการเลือก
การอ่านรายการที่เลือกตามประเภทรายการที่เลือก
ตัวอย่างต่อไปนี้แสดงวิธีใช้ประเภทการเลือกเพื่ออ่านการเลือกปัจจุบันในลักษณะที่เหมาะสมกับประเภท
การอ่านข้อความที่เลือก
คุณสามารถอ่านข้อความที่เลือกได้โดยใช้เมธอด Selection.getTextRange() การเลือกข้อความมี 2 ประเภท ได้แก่
- การเลือกช่วง: หากรูปร่างมีข้อความ "สวัสดี" และเลือก "สวัสดี" ไว้ ช่วงที่ได้รับจะมี startIndex=0 และ endIndex=2
- การเลือกเคอร์เซอร์: หากรูปร่างมีข้อความ "Hello" อยู่ และเคอร์เซอร์อยู่หลัง "H" ("H|ello") ช่วงที่ได้รับจะเป็นช่วงว่างที่มี startIndex=1 และ endIndex=1
การแก้ไขการเลือก
สคริปต์จะแก้ไขการเลือกของผู้ใช้ได้ การเปลี่ยนแปลงการเลือกที่สคริปต์ทำกับงานนำเสนอจะแสดงในการดำเนินการการเลือกต่อๆ ไปตลอดระยะเวลาที่เรียกใช้สคริปต์
การเปลี่ยนแปลงการเลือกจะแสดงในเบราว์เซอร์ของผู้ใช้หลังจากที่สคริปต์ทำงานเสร็จสมบูรณ์แล้ว หรือเมื่อเรียกใช้ Presentation.saveAndClose()
การเลือกหน้าปัจจุบัน
คุณเลือกหน้าในการแสดงข้อมูลที่ใช้งานอยู่เป็นหน้าปัจจุบันได้โดยเรียกใช้เมธอด selectAsCurrentPage() วิธีนี้จะนําองค์ประกอบหน้าเว็บ หน้า หรือการเลือกข้อความก่อนหน้าออก ดังนั้นการใช้วิธีนี้ในหน้าปัจจุบันจะช่วยให้คุณยกเลิกการเลือกรายการที่เลือกอยู่ในหน้านั้นได้ เช่น
การเลือกองค์ประกอบหน้าเว็บ
หากต้องการเลือกองค์ประกอบหน้าเว็บในหน้าเว็บ ให้ใช้เมธอด PageElement.select() ซึ่งจะเป็นการยกเลิกการเลือกองค์ประกอบหน้าเว็บที่เลือกไว้ก่อนหน้านี้ด้วย
เช่น
การเลือกองค์ประกอบหน้าเว็บหลายรายการ
หากต้องการเพิ่มองค์ประกอบหน้าเว็บอื่นๆ ลงในการทําการเลือก ให้ใช้เมธอด PageElement.select(false) องค์ประกอบหน้าเว็บทั้งหมดต้องอยู่ในหน้าปัจจุบัน
การเปลี่ยนรูปแบบส่วนที่เลือก
การแก้ไขที่สคริปต์ดำเนินการจะเปลี่ยนการเลือกปัจจุบันเพื่อให้สิ่งที่เลือกมีการเปลี่ยนแปลงตามการแก้ไข เช่น
- สมมติว่าคุณเลือกรูปร่าง A และ B ไว้ 2 รูป
- จากนั้นสคริปต์จะนำรูปร่าง ก. ออก
- ด้วยเหตุนี้ การเลือกจึงเปลี่ยนรูปแบบตามการแก้ไขเพื่อให้ระบบเลือกเฉพาะรูปร่าง ข
ตัวอย่างต่อไปนี้แสดงวิธีเปลี่ยนรูปแบบการเลือกโดยการดัดแปลงองค์ประกอบหน้าเว็บที่เลือก
การเลือกข้อความ
เลือกข้อความที่อยู่ในรูปร่างหรือในเซลล์ตารางได้โดยใช้เมธอด TextRange.select() หากข้อความอยู่ในรูปร่าง ระบบจะเลือกรูปร่างนั้นด้วย หากข้อความอยู่ในเซลล์ตาราง ระบบจะเลือกทั้งเซลล์ตารางนั้นและตารางที่ล้อมรอบ
ซึ่งจะตั้งค่าหน้าหลักเป็นหน้าปัจจุบันด้วย
การเลือกช่วงในรูปร่าง
ตัวอย่างต่อไปนี้แสดงวิธีเลือกช่วงภายในข้อความที่อยู่ในรูปร่าง
การเลือกเคอร์เซอร์ในรูปร่าง
ตัวอย่างต่อไปนี้แสดงวิธีทําการเลือกเคอร์เซอร์ภายในข้อความที่อยู่ในรูปร่าง
การเลือกช่วงในเซลล์ตาราง
ตัวอย่างต่อไปนี้แสดงวิธีเลือกช่วงภายในข้อความที่อยู่ในเซลล์ตาราง
การเลือกเคอร์เซอร์ใน TableCell
ตัวอย่างต่อไปนี้แสดงวิธีเลือกเคอร์เซอร์ภายในข้อความที่อยู่ในเซลล์ตาราง
การเปลี่ยนรูปแบบการเลือกด้วยการแก้ไขข้อความ
ตัวอย่างต่อไปนี้แสดงวิธีเปลี่ยนรูปแบบส่วนที่เลือกโดยการแก้ไขข้อความที่เลือก
ยกเลิกการเลือก
ไม่มีวิธีการที่ชัดเจนในการยกเลิกการเลือกข้อความหรือองค์ประกอบของหน้า อย่างไรก็ตาม ผลลัพธ์นี้สามารถทำได้โดยใช้วิธีการ Page.selectAsCurrentPage()
หรือ pageElement.select()
เลือกหน้าปัจจุบัน
ตัวอย่างต่อไปนี้แสดงวิธียกเลิกการเลือกปัจจุบันในหน้าเว็บโดยการตั้งค่าหน้านั้นให้เป็นหน้าปัจจุบัน
เลือกองค์ประกอบหน้าเว็บ
ตัวอย่างต่อไปนี้แสดงวิธียกเลิกการเลือกรายการปัจจุบันในหน้าเว็บโดยการเลือกองค์ประกอบหน้าเว็บรายการเดียว ซึ่งจะนํารายการอื่นๆ ทั้งหมดออกจากการเลือก