_GUICtrlRichEdit_GetTextInRange
Возвращает текст между указанными позициями
#include <GuiRichEdit.au3>
_GUICtrlRichEdit_GetTextInRange($hWnd, $iStart, $iEnd)
Параметры
$hWnd | Дескриптор элемента |
$iStart |
Позиция начала |
$iEnd |
Позиция конца Специальное значение: -1 - конец текста |
Возвращаемое значение
Успех: | the text |
Ошибка: | Возвращает False и устанавливает @error |
@error: | 101 - $HWnd не является дескриптором |
102 - $iStart is neither positive nor zero | |
1031 - $iEnd is neither positive nor zero nor -1 | |
1032 - $iStart < $iEnd and $iEnd &l;> -1 |
Примечания
Первый символ текста в элементе имеет позицию 0См. также
_GUICtrlRichEdit_GetTextinLineСм. также
Искать EM_GETTEXTRANGE в библиотеке MSDNПример
#include <GuiRichEdit.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
OnAutoItExitRegister('_OnExit') ; Освобождает ресурсы RichEdit даже при завершении скрипта с ошибкой
$hGui = GUICreate("Количество символов", 320, 120, -1, -1)
$hRichEdit = _GUICtrlRichEdit_Create($hGui, "Удалите часть текста и проверьте количество символов снова", _
10, 10, 300, 70, BitOR($ES_MULTILINE, $WS_VSCROLL, $ES_AUTOVSCROLL))
$lblMsg = GUICtrlCreateLabel("Строка состояния", 10, 85, 150, 60)
$iButton = GUICtrlCreateButton("Получить количество", 170, 85, 140, 30)
GUISetState()
While 1
Switch GUIGetMsg()
Case $iButton
; Возвращает количество символов
$sMsg = _GUICtrlRichEdit_GetTextLength($hRichEdit, True, True)
GUICtrlSetData($lblMsg, $sMsg)
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
Func _OnExit()
; Для версий ниже 3.3.8.0 обязательно удаление RichEdit или GUI для освобождения ресурсов RichEdit
_GUICtrlRichEdit_Destroy($hRichEdit)
GUIDelete()
EndFunc