Функция _GUICtrlRichEdit_SetParaBorder

 ↑  ←  Описание функции


_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 [, $vLineStyle [, $sColor [, $iSpace]]]])

Параметры

$hWnd Дескриптор элемента
$sLocation [необязательный] 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 [необязательный] 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 [необязательный] 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 [необязательный] space between the border and the text (in space units) ( (initial value): 0)

Возвращаемое значение

Успех:Возвращает True
Ошибка:Возвращает False и устанавливает @error
@error:101 - $hWnd is not a handle
102 - value of $sLocation is invalid
103 - value of $ivLineStyle is invalid
104 - value of $sColor is invalid
105 - $iSpace is neither a positive number nor zero

Примечания

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

См. также

_GUICtrlRichEdit_GetParaBorder, _GUICtrlRichEdit_SetSpaceUnit

См. также

Искать EM_SETPARAFORMAT в библиотеке MSDN

Пример

#include <GuiRichEdit.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

Global $lblMsg, $hRichEdit

Main()

Func Main()
    Local $hGui, $iStep = 0, $btnNext
    $hGui = GUICreate(StringTrimRight(@ScriptName, 4), 420, 350, -1, -1)
    $hRichEdit = _GUICtrlRichEdit_Create($hGui, 'Это тест.', 10, 10, 400, 220, _
            BitOR($ES_MULTILINE, $WS_VSCROLL, $ES_AUTOVSCROLL))
    $lblMsg = GUICtrlCreateLabel("", 10, 235, 300, 60)
    $btnNext = GUICtrlCreateButton("Далее", 270, 310, 60, 30)
    GUISetState()

    _GUICtrlRichEdit_AppendText($hRichEdit, "First paragraph")
    Report("0. First paragraph: default settings")

    While 1
        Switch GUIGetMsg()
            Case $GUI_EVENT_CLOSE
                _GUICtrlRichEdit_Destroy($hRichEdit)
                GUIDelete()
                Exit
            Case $btnNext
                $iStep += 1
                Switch $iStep
                    Case 1
                        _GUICtrlRichEdit_AppendText($hRichEdit, @CR & "Second paragraph")
                        _GUICtrlRichEdit_SetParaBorder($hRichEdit, "o", 3, "mag", 0.25)
                        Report("1. Second paragraph: with border (should show in Word)")
                    Case 2
                        _GUICtrlRichEdit_SetSel($hRichEdit, 10, -1)
                        Report("2. Settings of first paragraph in selection")
                    Case 3
                        _GUICtrlRichEdit_SetParaBorder($hRichEdit, "l", 6, "blu")
                        Report("3. Settings of both paragraphs changed")
                    Case 4
                        _GUICtrlRichEdit_SetParaBorder($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($hRichEdit)
                        _GUICtrlRichEdit_StreamToFile($hRichEdit, @DesktopDir & "\gcre.rtf")
                        GUICtrlSetState($btnNext, $GUI_DISABLE)
                EndSwitch
        EndSwitch
    WEnd
EndFunc   ;==>Main

Func Report($sMsg)
    $sMsg &=  @CR & @CR & "Get function returns " & @CR & _GUICtrlRichEdit_GetParaBorder($hRichEdit)
    GUICtrlSetData($lblMsg, $sMsg)
    ControlFocus($hRichEdit, "", "")
EndFunc   ;==>Report