_GUICtrlRichEdit_StreamToFile
Записывает содержимое элемента Rich Edit в файл
#include <GuiRichEdit.au3>
_GUICtrlRichEdit_StreamToFile($hWnd, $sFilespec [, $fIncludeCOM=True [, $iOpts=0 [, $iCodePage = 0]]])
Параметры
$hWnd | Дескриптор элемента |
$sFileSpec |
Путь к файлу |
$fIncludeCOM |
[необязательный] True (по умолчанию): Если записывается в файл .rtf, то включает в себя любые COM-объекты (space consuming) Если записывается в любой другой файл, то записывается текстовое представление COM-объектов False: Записывает пробелы вместо COM-объектов |
$iOpts |
[необязательный] Дополнительные опции: (по умолчанию: 0) $SFF_PLAINTRTF - записывать только rich text keywords общий для всех языков $SF_UNICODE - записывать Unicode |
$iCodePage |
[необязательный] Создать UTF-8 и текст использующий эту кодовую страницу По умолчанию: не использовать |
Возвращаемое значение
Успех: | Возвращает True |
Ошибка: | Возвращает False и устанавливает @error |
@error: | 101 - $HWnd не является дескриптором |
102 - Невозможно создать $sFilespec | |
1041 - $SFF_PLAINRTF недопустим для текстового файла | |
1042 - $opts: недопустимые опции | |
1043 - $SF_UNICODE допустимо только для текстовых файлов | |
700 - внутренняя ошибка |
Примечания
Если текст выделен, то заменяется выделенное, иначе заменяется весь текст в элементе Rich EditСм. также
_GUICtrlRichEdit_SetLimitOnText, _GUICtrlRichEdit_StreamFromVar, _GUICtrlRichEdit_StreamToVar, _GUICtrlRichEdit_StreamFromFileСм. также
Искать EM_STREAMIN в библиотеке MSDNПример
#include <GuiRichEdit.au3>
#include <WindowsConstants.au3>
#include <GUIConstantsEx.au3>
OnAutoItExitRegister('_OnExit') ; Освобождает ресурсы RichEdit даже при завершении скрипта с ошибкой
$hGui = GUICreate(StringTrimRight(@ScriptName, 4), 380, 220, -1, -1)
$hRichEdit = _GUICtrlRichEdit_Create($hGui, "Попробуйте изменять текст, сохранять в файл и открывать из файла", _
10, 10, 360, 170, BitOR($ES_MULTILINE, $WS_VSCROLL, $ES_AUTOVSCROLL))
$iButtonSave = GUICtrlCreateButton("Сохранить как ...", 40, 185, 140, 30)
$iButtonOpen = GUICtrlCreateButton("Открыть", 200, 185, 140, 30)
GUISetState()
While 1
Switch GUIGetMsg()
Case $iButtonSave
$SaveFile = FileSaveDialog('Сохранить как ...', @DesktopDir, 'Файл RTF (*.rtf)', 24, 'gcre', $hGui)
If @error Then ContinueLoop
If StringRight($SaveFile, 4) <> '.rtf' Then $SaveFile &= '.rtf'
; Сохраняет в файл
_GUICtrlRichEdit_StreamToFile($hRichEdit, $SaveFile)
Case $iButtonOpen
$OpenFile = FileOpenDialog('Открыть', @DesktopDir, 'Файл RTF (*.rtf)', '', 'gcre', $hGui)
If @error Then ContinueLoop
; Открывает из файла
_GUICtrlRichEdit_StreamFromFile($hRichEdit, $OpenFile)
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
Func _OnExit()
; Для версий ниже 3.3.8.0 обязательно удаление RichEdit или GUI для освобождения ресурсов RichEdit
_GUICtrlRichEdit_Destroy($hRichEdit)
GUIDelete()
EndFunc