Function Reference


_GUICtrlRichEdit_GetParaShading

Gets the shading settings of (first) selected paragraph or (if no selection) of the current paragraph

#include <GuiRichEdit.au3>
_GUICtrlRichEdit_GetParaShading ( $hWnd )

Parameters

$hWnd Handle to the control

Return Value

Success: settings of first selected paragraph - a string consisting of values separated by semicolons (:):
    value 1 - Weight - percent of foreground color, the rest being background color
    value 2 - style - a string containing one of the following:
        non - none
        dhz - dark horizontal
        dvt - dark vertical
        ddd - dark down diagonal
        dud - dark up diagonal
        dgr - dark grid
        dtr - dark trellis
        lhz - light horizontal
        lvt - light vertical
        ldd - light down diagonal
        lud - light up diagonal
        lgr - light grid
        ltr - light trellis
    value 3 - Foreground color - one of the following:
        "blk" - black
        "blu" - blue
        "cyn" - cyan
        "grn" - green
        "mag" - magenta
        "red" - red
        "yel" - yellow
        "whi" - white
        "dbl" - dark blue
        "dgn" - dark green
        "dmg" - dark magenta
        "drd" - dark red
        "dyl" - dark yellow
        "dgy" - dark grey
        "lgy" - light grey
    value 4 - Background color - same values as for Foreground color
    value 5 - scope:
        a - all (or only) selected paragraphs have these settings
        f - the first selected paragraph has these settings, but other(s) don't
        c - the current paragraph has these settings
Failure: "" and sets the @error flag to non-zero.
@error: 101 - $hWnd is not a handle

Remarks

Shading does not show in Rich Edit, but shading created here will show in Word.

Related

_GUICtrlRichEdit_SetParaShading

See Also

Search EM_SETPARAFORMAT in MSDN Library.

Example

#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)

    _GUICtrlRichEdit_SetText($g_hRichEdit, "First paragraph")
    Report("0. Para with default settings")

    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 & "Second paragraph")
                        _GUICtrlRichEdit_SetParaShading($g_hRichEdit, 60, "ddd", "blu", "dmg")
                        Report("1. Shading of second paragraph is ")
                    Case 2
                        _GUICtrlRichEdit_SetSel($g_hRichEdit, 0, 2)
                        Report("2. Style of first paragraph in the selection is ")
                    Case 3
                        _GUICtrlRichEdit_SetSel($g_hRichEdit, 10, 26)
                        _GUICtrlRichEdit_SetParaShading($g_hRichEdit, Default, "dgr")
                        Report("3. Change shading of both paragraphs")
                    Case 4
                        ; Stream all text to the Desktop so you can look at settings in Word
                        _GUICtrlRichEdit_Deselect($g_hRichEdit)
                        _GUICtrlRichEdit_StreamToFile($g_hRichEdit, @DesktopDir & "\gcre.rtf")
                        GUICtrlSetState($idBtnNext, $GUI_DISABLE)
                EndSwitch
        EndSelect
    WEnd
EndFunc   ;==>Example

Func Report($sMsg)
    $sMsg = $sMsg & @CRLF & @CRLF & "Get function returns " & @CRLF & _GUICtrlRichEdit_GetParaShading($g_hRichEdit)
    GUICtrlSetData($g_idLblMsg, $sMsg)
EndFunc   ;==>Report