Язык WordBasic - практический подход


Об операции вставки


 
Оператор Insert вставляет текст в то место документа, где находится IP. Если IP внутри выделенного текста, то этот текст будет замещен вставляемым текстом, если в Сервис·Опции·Редактирование установлен флаг "Режим забивки символов при вводе". Вставляемый текст не форматирован – на него распространяется оформление от текста,
находящегося слева. Если вставляемый текст нужно оформить каким-либо другим способом, то перед вставкой следует применить соответствующее форматирование:
 
Sub MAIN
Bold 1              ' выделить полужирным
Insert "Внимание!"
Bold 0              ' убрать полужирный
Insert "Сравните результат."
End Sub
 
Еще один пример, хорошо иллюстрирующий несколько необычную логику работы WordBasic при выделении части текста:
 
ParaDown 1            ' перейти в конец абзаца;
' ! IP может находиться в середине абзаца
ParaUp 1,1 ' в начало абзаца c выделением его
If Selection$() = Chr$(13) Then
      MsgBox "Пустая строка."
End If
 
Этот фрагмент можно использовать в макрокоманде подсчитывающей число абзацев в документе (пустую строку абзацем не считаем):
 
Sub MAIN
StartOfDocument
Count = 0
While ParaDown()
ParaUp 1, 1
If Selection$() <> Chr$(13) Then Count = Count + 1
ParaDown 1, 0
Wend
MsgBox "Абзацев: " + Str$(Count-1)
End Sub
 
Три специальных формы оператора Insert:
 
InsertSectionBreak
InsertPageBreak
InsertColumnBreak
InsertSectionBreak
 
Синтаксис:
 
InsertSectionBreak
 
Пример.
 
Sub MAIN
FileNewDefault
ViewPage
For count = 1 To 50
Insert "This is a test."
InsertPara
Next count
StartOfDocument
LineDown 15
InsertSectionBreak
LineDown 15
InsertSectionBreak
LineUp 5
WindowArrangeAll
FilePageSetup .TopMargin = "1" + Chr$(34), .BottomMargin = "1" +
Chr$(34), .LeftMargin = "2.75" + Chr$(34), .RightMargin = "2.75" +
Chr$(34)
End Sub



Начало  Назад  Вперед