Schreibt den gesamten Inhalt eines Controls in eine Datei
#include <GuiRichEdit.au3>
_GUICtrlRichEdit_StreamToFile ( $hWnd, $sFileSpec [, $bIncludeCOM = True [, $iOpts = 0 [, $iCodePage = 0 [, $iFileEncoding = Default]]]] )
$hWnd | Handle des Controls |
$sFileSpec | Speicherort der Datei (siehe Bemerkungen) |
$bIncludeCOM | [optional] True (Standard): Wenn als RTF-Datei gespeichert wird, werden alle COM-Objekte mitgespeichert. (platzverschwendend) Wenn als eine andere Datei gespeichert wird, wird eine Text-Wiedergabe der COM-Objekte gespeichert. False: Schreibt Leerzeichen an Stelle von COM-Objekten. |
$iOpts | [optional] Zusätzliche Optionen: (Standard: 0) $SFF_PLAINRTF - Schreibt nur RT-Schlüsselwörter, die üblich in allen Sprachen sind $SF_UNICODE - Schreibt in Unicode |
$iCodePage | [optional] True: Generiere UTF-8 und Text durch Benutzung dieses Seitenformates (Standard: False) |
$iFileEncoding | [optional] Dateicodierungsspezifikation (Siehe FileOpen () für weitere Informationen). Standard; $FO_READ. |
Erfolg: | True. |
Fehler: | False und setzt das @error Flag auf ungleich null. |
@error: | 101 - $hWnd ist kein handle 102 - Konnte $sFileSpec nicht erstellen 1041 - $SFF_PLAINRTF ist ungültig für eine Textdatei 1042 - $iOpts ist ungültig 1043 - $SF_UNICODE ist nur gültig für eine Textdatei 700 - Interner Fehler |
Wenn Text ausgewählt ist, wird nur dieser in die Datei geschrieben.
Wenn die Erweiterung in $sFileSpec .rtf ist, wird als RTF-Datei gespeichert, ansonsten ist der Inhalt der einer Textdatei (.txt).
- - - - - - - - Erklärung der Controls - - - - - - - -
_GUICtrlRichEdit_SetLimitOnText, _GUICtrlRichEdit_StreamFromFile, _GUICtrlRichEdit_StreamFromVar, _GUICtrlRichEdit_StreamToVar
Suche nach EM_STREAMIN in der MSDN Bibliothek.
#include <GUIConstantsEx.au3>
#include <GuiRichEdit.au3>
#include <MsgBoxConstants.au3>
#include <WindowsConstants.au3>
Example()
Func Example()
Local $hGui, $hRichEdit, $iMsg
$hGui = GUICreate("Beispiel (" & StringTrimRight(@ScriptName, StringLen(".exe")) & ")", 320, 350, -1, -1)
$hRichEdit = _GUICtrlRichEdit_Create($hGui, "Das ist ein Test.", 10, 10, 300, 220, _
BitOR($ES_MULTILINE, $WS_VSCROLL, $ES_AUTOVSCROLL))
GUISetState(@SW_SHOW)
_GUICtrlRichEdit_AppendText($hRichEdit, "Absatz mit Standard Randeinstellung ")
MsgBox($MB_SYSTEMMODAL, "", "Die Standard Randeinstellungen für den Absatz sind " & _GUICtrlRichEdit_GetParaBorder($hRichEdit))
_GUICtrlRichEdit_AppendText($hRichEdit, @CR & "Zweiter Absatz")
_GUICtrlRichEdit_SetParaBorder($hRichEdit, "o", 3, "mag", 0.25)
MsgBox($MB_SYSTEMMODAL, "", "Randeinstellung für den 2. Absatz sind " & _GUICtrlRichEdit_GetParaBorder($hRichEdit))
_GUICtrlRichEdit_SetSel($hRichEdit, 10, -1)
Sleep(1000)
MsgBox($MB_SYSTEMMODAL, "", "Randeinstellungen für den ersten Absatz der Auswahl sind " & _GUICtrlRichEdit_GetParaBorder($hRichEdit))
; Wechsel von Aussenbegrenzung zu Linksbegrenzung
_GUICtrlRichEdit_SetParaBorder($hRichEdit, "l")
; Legt eine Datei auf dem Desktop an, damit man sich die Randeinstellungen in Word ansehen kann
_GUICtrlRichEdit_Deselect($hRichEdit)
_GUICtrlRichEdit_StreamToFile($hRichEdit, @DesktopDir & "\gcre.rtf")
While True
$iMsg = GUIGetMsg()
Select
Case $iMsg = $GUI_EVENT_CLOSE
_GUICtrlRichEdit_Destroy($hRichEdit) ; wird benötigt, da sonst das Skript abstürzt
;~ GUIDelete() ; ist auch in Ordnung
Exit
EndSelect
WEnd
EndFunc ;==>Example