Phần được chọn là nội dung bất kỳ hiện đang được chọn trong trang trình bày đang mở, chẳng hạn như một span văn bản được đánh dấu hoặc một bảng. Hướng dẫn này cho bạn biết cách lấy và đặt lựa chọn trong một bản trình bày đang hoạt động bằng Apps Script.
Lựa chọn này là bản tổng quan nhanh về lựa chọn khi tập lệnh bắt đầu. Nếu người dùng nhấp và lựa chọn thay đổi trong khi tập lệnh đang chạy, thì những thay đổi đó sẽ không được phản ánh.
Lựa chọn và loại lựa chọn
Bạn có thể đọc lựa chọn bằng cách sử dụng lớp Selection (Lựa chọn). Lớp này có nhiều phương thức để lấy các đối tượng đã chọn dựa trên loại của(các) đối tượng đã chọn.
Enum SelectionType đại diện cho loại đối tượng cụ thể đã chọn. Ví dụ: nếu người dùng đã chọn một số văn bản trong một hình dạng, thì loại lựa chọn sẽ là TEXT. Trong trường hợp này, bạn có thể truy xuất phạm vi văn bản đã chọn bằng phương thức selection.getTextRange()
.
Bạn cũng có thể truy xuất đối tượng chứa vùng chọn; tiếp tục ví dụ trên, bạn có thể truy xuất hình dạng chứa văn bản đã chọn bằng selection.getPageElementRange().getPageElements()[0]
. Tương tự, trang chứa hình dạng bao quanh là trang đang hoạt động hiện tại; để truy xuất trang đó, hãy sử dụng selection.getCurrentPage()
.
Đọc nội dung đã chọn
Để đọc lựa chọn, hãy sử dụng phương thức Presentation.getSelection() như trong ví dụ sau:
Đọc trang hiện tại
Để truy xuất Trang hiện tại mà người dùng đang xem, hãy sử dụng các phương thức getSelection() và getCurrentPage() như sau:
Xin lưu ý rằng trang hiện tại có thể là một trong các loại sau:
Trang hiện tại có thể có một hoặc nhiều đối tượng được chọn và SelectionType xác định loại lựa chọn.
Đọc lựa chọn dựa trên loại lựa chọn
Ví dụ sau đây cho thấy cách bạn có thể sử dụng loại lựa chọn để đọc lựa chọn hiện tại theo cách phù hợp với loại.
Đọc văn bản đã chọn
Bạn có thể đọc văn bản được chọn bằng phương thức Selection.getTextRange(). Có hai loại lựa chọn văn bản:
- Chọn dải ô: Nếu một hình dạng chứa văn bản "Hello" và "He" được chọn, thì dải ô được trả về sẽ có startIndex=0 và endIndex=2.
- Lựa chọn con trỏ: Nếu một hình dạng chứa văn bản "Hello" và con trỏ nằm sau "H" ("H|ello"), thì dải ô được trả về là dải ô trống với startIndex=1 và endIndex=1.
Sửa đổi phần được chọn
Tập lệnh có thể sửa đổi lựa chọn của người dùng. Mọi thay đổi về lựa chọn mà tập lệnh thực hiện đối với bản trình bày đều được phản ánh trong các thao tác lựa chọn tiếp theo trong suốt thời gian thực thi tập lệnh.
Các thay đổi về lựa chọn chỉ được phản ánh trên trình duyệt của người dùng sau khi quá trình thực thi tập lệnh hoàn tất hoặc khi Presentation.saveAndClose()
được gọi.
Chọn trang hiện tại
Bạn có thể chọn một trang trong bản trình bày đang hoạt động làm trang hiện tại bằng cách gọi phương thức selectAsCurrentPage(). Phương thức này xoá mọi phần tử trang, trang hoặc văn bản đã chọn trước đó. Vì vậy, việc sử dụng phương thức này trên trang hiện tại cho phép bạn bỏ chọn mọi lựa chọn hiện tại trên trang. Ví dụ:
Chọn một phần tử trang
Để chọn một phần tử trang trong trang, hãy sử dụng phương thức PageElement.select(). Thao tác này cũng bỏ chọn mọi phần tử trang đã chọn trước đó.
Ví dụ:
Chọn nhiều phần tử trang
Để thêm các phần tử trang khác vào lựa chọn, hãy sử dụng phương thức PageElement.select(false). Tất cả các phần tử trang phải nằm trong trang hiện tại.
Biến đổi vùng lựa chọn
Các nội dung chỉnh sửa mà tập lệnh của bạn thực hiện có thể biến đổi lựa chọn hiện tại, nhờ đó nội dung được chọn sẽ thay đổi do nội dung chỉnh sửa. Ví dụ:
- Giả sử bạn đã chọn hai hình A và B.
- Tiếp theo, tập lệnh sẽ xoá hình A.
- Do đó, phần được chọn sẽ được biến đổi theo nội dung chỉnh sửa để chỉ hình B được chọn.
Ví dụ sau đây cho thấy cách biến đổi lựa chọn bằng cách thao tác với các phần tử trang đã chọn.
Chọn văn bản
Bạn có thể chọn văn bản có trong một hình dạng hoặc trong một ô bảng bằng cách sử dụng phương thức TextRange.select(). Nếu văn bản nằm trong một hình dạng, thì hình dạng đó cũng sẽ được chọn. Nếu văn bản nằm trong một ô bảng, thì cả ô bảng đó và bảng bao quanh đều được chọn.
Thao tác này cũng đặt trang mẹ làm trang hiện tại.
Lựa chọn dải ô trong một hình dạng
Ví dụ sau đây cho thấy cách chọn một dải ô trong văn bản chứa trong một hình dạng.
Con trỏ chọn trong một hình dạng
Ví dụ sau đây cho thấy cách tạo vùng chọn con trỏ trong văn bản chứa trong một hình dạng.
Lựa chọn dải ô trong ô bảng
Ví dụ sau đây cho thấy cách chọn một dải ô trong văn bản chứa trong một ô bảng.
Lựa chọn con trỏ trong TableCell
Ví dụ sau đây cho thấy cách chọn con trỏ trong văn bản chứa trong một ô bảng.
Biến đổi lựa chọn bằng nội dung chỉnh sửa
Ví dụ sau đây cho thấy cách chuyển đổi phần văn bản được chọn bằng cách chỉnh sửa văn bản đó.
Bỏ chọn
Không có phương thức rõ ràng nào để bỏ chọn văn bản hoặc phần tử trang. Tuy nhiên, bạn có thể đạt được kết quả này bằng cách sử dụng phương thức Page.selectAsCurrentPage()
hoặc pageElement.select()
.
Chọn một trang hiện tại
Ví dụ sau đây cho thấy cách bỏ chọn mọi lựa chọn hiện tại trên một trang bằng cách đặt trang đó làm trang hiện tại.
Chọn một phần tử trang
Ví dụ sau đây cho biết cách bỏ chọn mọi lựa chọn hiện tại trên một trang bằng cách chọn một phần tử trang, do đó xoá tất cả các mục khác khỏi lựa chọn.