Écrit le texte d'un contrôle RichEdit dans un fichier
#include <GuiRichEdit.au3>
_GUICtrlRichEdit_StreamToFile ( $hWnd, $sFileSpec [, $bIncludeCOM = True [, $iOpts = 0 [, $iCodePage = 0 [, $iFileEncoding = Default]]]] )
$hWnd | Handle du contrôle |
$sFileSpec | Spécification du fichier |
$bIncludeCOM | [optionnel] True (par défaut): L'écriture dans un fichier au format RTF, comprend les objets COM (consomme les espaces) L'écriture dans n'importe quel autre fichier, écrit un texte representant les objets COM False: Ecrit des espaces à la place des objets COM |
$iOpts | [optionnel] Options supplémentaires: (par défaut: 0) $SFF_PLAINTRTF - écrit seulement les mots-clés du texte enrichi communs à toutes les langues $SF_UNICODE - écrit du Unicode |
$iCodePage | [optionnel] Génére de l'UTF-8 et du texte utilisant cette page de code Par défaut: ne le fait pas |
$iFileEncoding | [optional] Spécification d'encodage du fichier (voir FileOpen() pour plus d'info). Par défaut: $FO_UTF8. |
Succès: | Retourne True |
Échec: | Retourne False et définit @error <> 0. |
@error: | 101 - $hWnd n'est pas un handle 102 - Impossible de créer $sFileSpec 1041 - $SFF_PLAINRTF n'est pas valide pour un fichier texte 1042 - $opts : option invalide 1043 - $SF_UNICODE n'est valide que pour un fichier texte 700 - Erreur interne |
Si du texte est sélectionné, n'écrit que la sélection, sinon écrit tout le texte du contrôle.
Si l'extension de $sFileSpec est .rtf, du RTF est écrit, sinon du texte est écrit.
_GUICtrlRichEdit_SetLimitOnText, _GUICtrlRichEdit_StreamFromFile, _GUICtrlRichEdit_StreamFromVar, _GUICtrlRichEdit_StreamToVar
Consultez EM_STREAMIN dans la librairie MSDN.
#include <GUIConstantsEx.au3> #include <GuiRichEdit.au3> #include <MsgBoxConstants.au3> #include <WindowsConstants.au3> Example() Func Example() Local $hGui, $hRichEdit, $iMsg $hGui = GUICreate("Exemple (" & StringTrimRight(@ScriptName, 4) & ")", 320, 350, -1, -1) $hRichEdit = _GUICtrlRichEdit_Create($hGui, "Ceci est un test.", 10, 10, 300, 220, _ BitOR($ES_MULTILINE, $WS_VSCROLL, $ES_AUTOVSCROLL)) GUISetState(@SW_SHOW) _GUICtrlRichEdit_AppendText($hRichEdit, "Para with default border settings") MsgBox($MB_SYSTEMMODAL, "", "Les paramètres par défaut des marges des paragraphes sont " & _GUICtrlRichEdit_GetParaBorder($hRichEdit)) _GUICtrlRichEdit_AppendText($hRichEdit, @CRLF & "Second paragraphee") _GUICtrlRichEdit_SetParaBorder($hRichEdit, "o", 3, "mag", 0.25) MsgBox($MB_SYSTEMMODAL, "", "Les paramètres de marge du Second paragraphee sont " & _GUICtrlRichEdit_GetParaBorder($hRichEdit)) _GUICtrlRichEdit_SetSel($hRichEdit, 10, -1) Sleep(1000) MsgBox($MB_SYSTEMMODAL, "", "Les paramètres des marges du premier paragraphe de la sélection sont " & _GUICtrlRichEdit_GetParaBorder($hRichEdit)) ; Modifie la bordure extérieure en bordure gauche _GUICtrlRichEdit_SetParaBorder($hRichEdit, "l") ; Sauvegarde tout le texte sur le bureau de sorte que vous puissiez regarder les paramètres de bordure dans Word _GUICtrlRichEdit_Deselect($hRichEdit) _GUICtrlRichEdit_StreamToFile($hRichEdit, @DesktopDir & "\gcre.rtf") While GUIGetMsg() <> $GUI_EVENT_CLOSE Wend _GUICtrlRichEdit_Destroy($hRichEdit) ; Nécessaire sauf si le script se bloque ; GUIDelete(); est OK aussi EndFunc ;==>Example