1.8.3. TbtkScriptTextViewObject¶
- 
class 
TbtkScriptTextViewObject¶ Класс, реализующий API для управления курсором, позиционирования прокрутки на конкретной линии и работы с выделением текста в текстовых редакторах. Реализуется на уровне GUI-контроллера фрейма выборки. Доступ осуществляется через
TbtkScriptControllerObject.Text- 
CursorLine: Integer¶ Номер линии, на который находится курсор. Чтение/Запись.
Return type: Integer New in version BtkRuntime: 5.4.0.3582 ms 1
Пример использования¶<PASCAL> if Assigned(Selection.Controller.Text) then ShowMessage('Cursor is on line: ' + IntToStr(Selection.Controller.Text.CursorLine)); </PASCAL>
- 
CursorPos: Integer¶ Позиция курсора относительно начала текста. Чтение/Запись.
Return type: Integer New in version BtkRuntime: 5.4.0.3582 ms 1
Пример использования¶<PASCAL> if Assigned(Selection.Controller.Text) then ShowMessage('Cursor position: ' + IntToStr(Selection.Controller.Text.CursorPos) ); </PASCAL>
- 
TopLine: Integer¶ Номер строки, которая отображается в редакторе самой первой. Чтение/Запись.
Return type: Integer New in version BtkRuntime: 5.4.0.3582 ms 1
Пример использования¶<PASCAL> if Assigned(Selectioin.Controller.Text) then begin s := InputBox('Change line', 'Switch from line ' + IntToStr(Selection.Controller.Text.TopLine) + ' to line:','') Selection.Controller.Text.TopLine := StrToInt(s); end </PASCAL>
- 
SelLength: Integer¶ Длина выделенного текста в символах в текущем редакторе. Чтение/Запись.
Return type: Integer New in version BtkRuntime: 5.4.0.3582 ms 1
Пример использования¶<PASCAL> if Assigned(Selection.Controller.Text) then begin Selection.Controller.Text.SelStart := StrToInt(InputBox('Select text', 'From', '')); Selection.Controller.Text.SelLength := StrToInt(InputBox('Select text', 'Length', '')); end </PASCAL>
- 
SelStart: Integer¶ Позиция относительно начала текста, с которой начинается выделение текста. Чтение/Запись.
Return type: Integer New in version BtkRuntime: 5.4.0.3582 ms 1
Пример использования¶<PASCAL> if Assigned(Selection.Controller.Text) then ShowMessage('Selection starts at ' + IntToStr(Selection.Controller.Text.SelStart)); </PASCAL>
- 
SelText: String¶ Выделенный текст в текущем редакторе. Чтение/Запись. Если выделение отсутствует, при присвоении свойства происходит вставка текста в место установки курсора.
Return type: String New in version BtkRuntime: 5.4.0.3582 ms 1
Пример использования¶<PASCAL> if Assigned(Selection.Controller.Text) then ShowMessage(Selection.Controller.Text.SelText); </PASCAL>
- 
MoveCursorTo(Line, Col: Integer)¶ Переместить курсор в указанную позиию в редакторе ввода.
Parameters: - Line (Integer) – номер линии, на которую будет перемещен курсор
 - Col (Integer) – позиция относительно начала линии, на которую будет перемещен курсор.
 
New in version BtkRuntime: 5.4.0.3582 ms 1
Пример использования¶<PASCAL> if Assigned(Selection.Controller.Text) then begin line := InputBox('','line',''); col := InputBox('','column',''); Selection.Controller.Text.MoveCursorTo(line, col); end; </PASCAL>
- 
GetPosByLine(LineNo: Integer; CursorAlign: TbtkLineCursorAlign): Integer¶ Возвращает позицию относительно начала текста, которая соответствует заданной линии и расположению курсора относительно линии
Parameters: - LineNo (Integer) – номер линии
 - CursorAlign (TbtkLineCursorAlign) – 
выравнивание курсора:
- lcaStart
 - курсор в начале строки
 - lcaEnd
 - курсор в конце строки.
 
 
Return type: Integer
New in version BtkRuntime: 5.4.0.3582 ms 1
Пример использования¶<PASCAL> if Assigned(Selection.Controller.Text) then begin i := InputBox('', 'Line num',''); ShowMessage('Pos at the begining of line ' + i + ' ' + IntToStr(Selection.Controller.Text.GetPosByLine(StrToInt(i), lcaStart))); end; </PASCAL>
- 
GetLineByPos(Pos: Integer): Integer¶ Возвращает номер линии в редакторе ввода, которой соответствует позиция относительно начала текста.
Parameters: Pos (Integer) – позиция в тексте Return type: Integer New in version BtkRuntime: 5.4.0.3582 ms 1
Пример использования¶<PASCAL> if Assigned(Selection.Controller.Text) then begin pos := InputBox('','position',''); ShowMessage('Position ' + pos + ' is on line no: ' + IntToStr(Selection.Controller.Text.GetLineByPos(StrToInt(pos)))); end; </PASCAL>
- 
ShowCursor(CursorAlign: TbtkShowCursorAlign)¶ Выровнять положение линии с курсором относительно экрана.
Parameters: CursorAlign (TbtkShowCursorAlign) – выравнивание курсора:
- scaStart
 - вверху экрана
 - scaMiddle
 - посредине экрана
 - scaEnd
 - внизу экрана.
 
New in version BtkRuntime: 5.4.0.3582 ms 1
Пример использования¶<PASCAL> if Assigned(Selection.Controller.Text) then begin Selection.Controller.Text.CursorLine := 50; Selection.Controller.Text.ShowCursor(scaMiddle); end; </PASCAL>
-