Sets or clears the modification flag
#include <GuiRichEdit.au3>
_GUICtrlRichEdit_SetModified ( $hWnd [, $bState = True] )
$hWnd | Handle to the control |
$bState | [optional] Specifies the new value for the modification flag: True - Indicates that the text has been modified (default) False - Indicates it has not been modified. |
Success: | True. |
Failure: | False and sets the @error flag to non-zero. |
@error: | 101 - $hWnd is not a handle 102 - $bState must be True or False |
The system automatically sets the modification flag to False when the control is created.
If the control's text is changed, either by the user or programmatically, the system sets the flag to True
Call _GUICtrlRichEdit_IsModified() to retrieve the current state of the flag.
Search EM_SETMODIFY in MSDN Library.
#include <GUIConstantsEx.au3>
#include <GuiRichEdit.au3>
#include <WindowsConstants.au3>
Global $g_idLblMsg, $g_hRichEdit
Example()
Func Example()
Local $hGui, $iMsg, $idBtnNext, $iStep = 0
$hGui = GUICreate("Example (" & StringTrimRight(@ScriptName, StringLen(".exe")) & ")", 320, 350, -1, -1)
$g_hRichEdit = _GUICtrlRichEdit_Create($hGui, "This is a test.", 10, 10, 300, 220, _
BitOR($ES_MULTILINE, $WS_VSCROLL, $ES_AUTOVSCROLL))
$g_idLblMsg = GUICtrlCreateLabel("", 10, 235, 300, 60)
$idBtnNext = GUICtrlCreateButton("Next", 270, 310, 40, 30)
GUISetState(@SW_SHOW)
Report("Initial state after creation")
While True
$iMsg = GUIGetMsg()
Select
Case $iMsg = $GUI_EVENT_CLOSE
_GUICtrlRichEdit_Destroy($g_hRichEdit) ; needed unless script crashes
; GUIDelete() ; is OK too
Exit
Case $iMsg = $idBtnNext
$iStep += 1
Switch $iStep
Case 1
_GUICtrlRichEdit_AppendText($g_hRichEdit, @CRLF & "A paragraph")
Report("Added some text")
Case 2
_GUICtrlRichEdit_SetModified($g_hRichEdit, False)
Report("After clearing the modification flag")
Case 3
GUICtrlSetData($g_idLblMsg, "Type some text. Then click on Next")
Case 4
Report("After typing")
GUICtrlSetState($idBtnNext, $GUI_DISABLE)
EndSwitch
EndSelect
WEnd
EndFunc ;==>Example
Func Report($sMsg)
$sMsg = $sMsg & @CRLF & "State is " & _GUICtrlRichEdit_IsModified($g_hRichEdit)
GUICtrlSetData($g_idLblMsg, $sMsg)
EndFunc ;==>Report