Коллекция Panes и объекты Pane предоставляют разделитель текста в Word. На первый взгляд разделитель текста в Word не предоставляет практического интереса, да и используется редко. Но, смысл в нем есть, так как он позволяет разделить окно документа на две части. При этом, обе части будут отображать один и тот же текст, плюс, редактирование текста в одной части разделителя влияет и на содержимое в дугой части.
Panes – разделители текста в Word
Коллекция объектов Pane, которые представляют разделители для одного окна. Используйте свойство Panes объекта Window для возврата коллекции Panes.
Свойства
Count – отображает количество объектов Pane.
Методы
Item(index) – Метод позволяет получить доступ к заданному объекту Pane по его номеру.
Add(SplitVertical) — Возвращает объект Pane, представляющий новый разделитель текста в окне Word.
SplitVertical — Число, представляющее размер разделителя в процентах.
Pane – разделитель текста в Word
Свойства
DisplayRulers – Показать (true) или скрыть (false) линейку.
DisplayVerticalRuler — Показать (true) или скрыть (false) вертикальную линейку.
HorizontalPercentScrolled — Возвращает или устанавливает горизонтальную прокрутку в процентах от ширины документа.
Index — Возвращает позицию элемента в коллекции.
MinimumFontSize — Возвращает или устанавливает минимальный размер шрифта (в пунктах) отображаемый для указанного разделителя текста.
Next — Возвращает объект Pane, представляющий следующий разделитель документа в коллекции.
Previous — Возвращает объект Pane, представляющий предыдущий разделитель документа в коллекции.
VerticalPercentScrolled — Возвращает или устанавливает позицию прокрутки по вертикали в процентах от длины документа.
Document — Возвращает объект Document, связанный с указанным панели. Только чтение.
Frameset — Возвращает объект Frameset, представляющий целую страницу фреймов или единичный фрейм на странице фреймов. Только чтение.
Pages — Возвращает коллекцию Pages, представляющую страницы в документе.
Selection — Возвращает объект Selection, представляющий выбор или точку вставки внутри разделителя текста word документа. Только чтение.
View — Возвращает View объект, представляющий просмотр для указанного разделителя текста в Word.
Zooms — Возвращает коллекцию Zooms, представляющий параметры масштабирования.
Методы
Activate() – Активировать указанный разделитель текста в Word.
AutoScroll(Velocity) – Автоматическая прокрутка для указанного разделителя.
Velocity — Скорость прокрутки. Может быть числом от — 100 до 100. Используйте — 100 для полной скорости обратной назад, а 100 используйте для полной скорости прокрутки вперед.
Close() — Закрывает указанный разделитель.
LargeScroll(Down, Up, ToRight, ToLeft) — Прокрутка окна или панели на указанное число экранов. Передаваемые параметры определяют числовые значения для прокрутки вверх, вниз, вправо и влево.
PageScroll(Down, Up) — Постраничная прокрутка.
SmallScroll(Down, Up, ToRight, ToLeft) — Прокрутка окна на заданное количество строк.
NewFrameset() — Создает новую страницу фреймов на основе указанного разделителя.
TOCInFrameset() — Создает оглавление на основе указанного разделителя текста в Word и помещает его в новый фрейм на левой стороне фреймов страницы.
Ниже я привел два примера скриптов на языке VBScript и JScript:
' ---------------------------------------------------------------------------- ' Коллекция Panes и объект Pane ' Работа з разделителями текста в Word ' Panes.vbs ' ---------------------------------------------------------------------------- Option Explicit dim oWord, oDoc, oSel, i, oPars, MyText Set oWord = CreateObject("Word.Application") Set oDoc = oWord.Documents oDoc.Add() Set oSel = oWord.Selection oWord.Visible = True MyText = "Разделитель текста в word. " For i=0 to 40 oSel.TypeText MyText & MyText & MyText & MyText & MyText & MyText & MyText oSel.TypeParagraph Next oDoc(1).Windows(1).Panes.Add 60 MsgBox "Количество разделителей - " & oDoc(1).Windows(1).Panes.Count oDoc(1).Windows(1).Panes(2).PageScroll , 2 MsgBox "Автопрокрутка" oDoc(1).Windows(1).Panes(2).AutoScroll 20 MsgBox "Закрываем разделитель" oDoc(1).Windows(1).Panes(2).Close |
// ---------------------------------------------------------------------------- // Коллекция Panes и объект Pane // Работа з разделителями текста в Word // Panes.js // ---------------------------------------------------------------------------- var oWord, oDoc, oSel, i, oPars, MyText; oWord = WScript.CreateObject("Word.Application"); oDoc = oWord.Documents; oDoc.Add(); oSel = oWord.Selection; oWord.Visible = true; MyText = "Разделитель текста в word. "; for (i=0; i<=40; i++){ oSel.TypeText(MyText + MyText + MyText + MyText + MyText + MyText + MyText); oSel.TypeParagraph(); } oDoc(1).Windows(1).Panes.Add(60); WScript.Echo ("Количество разделителей - " + oDoc(1).Windows(1).Panes.Count); oDoc(1).Windows(1).Panes(2).PageScroll(0, 2); WScript.Echo ("Автопрокрутка"); oDoc(1).Windows(1).Panes(2).AutoScroll(20); WScript.Echo ("Закрываем разделитель"); oDoc(1).Windows(1).Panes(2).Close(); |
В данных примерах происходит добавление разделителя текста в Word с помощью метода Add, соотношение разделителей будет 60:40. Аналогичные действия можно сделать с помощью свойств Split и SplitVertical объекта Window. Далее происходит определение прокрутки и формирование автоматической прокрутки и закрытие одного из разделителей.
Когда я писал примеры для статьи, то столкнулся со следующим явлением…. Из программного кода видно, что мы обращаемся к панели panes(2). Однако, на практике все выходит по-другому, вначале определяются параметры прокрутки для одной панели, а вот уже закрытие и авто-прокрутка относятся к другой панели. Хотя, значение индекса одно и то же.