Function Reference


_GUICtrlRichEdit_SetParaBorder

Sets the border of paragraph(s) in the current selection or, if no selection, of paragraphs inserted at the insertion point

#include <GuiRichEdit.au3>
_GUICtrlRichEdit_SetParaBorder ( $hWnd [, $sLocation = Default [, $vLineStyle = Default [, $sColor = Default [, $iSpace = Default]]]] )

Parameters

$hWnd Handle to the control
$sLocation [optional] a string consisting of any logical combination of:
    l - left border
    r - right border
    t - top border
    b - bottom border
    i - inside border
    o - outside border
    or "" - no border (initial value)
$vLineStyle [optional] line style - one of:
    "none" - no line (initial value)
    .75 - 3/4 point
    1.5 - 1 1/2 points
    2.25 - 2 1/4 points
    3 - 3 points
    4.5 - 4 1/2 points
    6 - 6 points
    ".75d" - 1/2 points, double
    "1.5d" - 1 1/2 points, double
    "2.25d" - 2 1/4 points, double
    ".75g" - 3/4 point grey
    ".75gd" - 3/4 point grey dashed
$sColor [optional] one of:
    "aut" - autocolor
    "blk" - black (initial value)
    "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
$iSpace [optional] space between the border and the text (in space units) ( (initial value): 0)

Return Value

Success: True.
Failure: False and sets the @error flag to non-zero.
@error: 101 - $hWnd is not a handle
102 - value of $sLocation is invalid
103 - value of $vLineStyle is invalid
104 - value of $sColor is invalid
105 - $iSpace is neither a positive number nor zero

Remarks

To set "space units", call _GUICtrlRichEdit_SetSpaceUnit(). Initially inches.

If text is selected, the defaults are the values of the first paragraph with text selected.
If none is selected, the defaults are the values of the current paragraph.

To remove a border, call with two parameters: ($hWnd, "").

Borders do not show in Rich Edit, but ones created here should show in Word.

Related

_GUICtrlRichEdit_GetParaBorder, _GUICtrlRichEdit_SetSpaceUnit

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, $iStep = 0, $idBtnNext
    $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_AppendText($g_hRichEdit, "First paragraph")
    Report("0. First paragraph: 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_SetParaBorder($g_hRichEdit, "o", 3, "mag", 0.25)
                        Report("1. Second paragraph: with border (should show in Word)")
                    Case 2
                        _GUICtrlRichEdit_SetSel($g_hRichEdit, 10, -1)
                        Report("2. Settings of first paragraph in selection")
                    Case 3
                        _GUICtrlRichEdit_SetParaBorder($g_hRichEdit, "l", 6, "blu")
                        Report("3. Settings of both paragraphs changed")
                    Case 4
                        _GUICtrlRichEdit_SetParaBorder($g_hRichEdit, Default, ".75gd")
                        Report("4. Line style changed")
                    Case 5
                        ; Stream all text to the Desktop so you can look at border 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_GetParaBorder($g_hRichEdit)
    GUICtrlSetData($g_idLblMsg, $sMsg)
EndFunc   ;==>Report