Funktionreferenz


_GUICtrlRichEdit_SetCharAttributes

Beschreibung anzeigen in

Setzt/Entfernt ein Attribut für den markierten Text oder, falls keiner markiert ist, für den Text nach der Einfügemarke (Cursor)

#include <GuiRichEdit.au3>
_GUICtrlRichEdit_SetCharAttributes ( $hWnd, $sStatesAndEffects [, $bWord = False] )

Parameter

$hWnd Handle des Controls
$sStatesAndEffects Ein String, zusammengesetzt aus einer/mehreren Zeichengruppe(n) aus 3 Zeichen: +/- für den Zustand und ein zweibuchstabiges Kürzel für das Attribut.
Erstes Zeichen: + für gesetzt, - für nicht gesetzt
Kürzel für das zweite und dritte Zeichen:
    bo - Fett
    di - Deaktiviert - Zeichen angezeigt mit einem Schatten [nd]
    em - Ausgeprägt [nd]
    hi - Versteckt, z.B. nicht angezeigt
    im - Eingeprägt [nd]
    it - Kursiv
    li - EN_LINK Nachrichten werden gesendet, wenn die Maus über Text mit diesem Attribut fährt.
    ou - Umrissen [nd]
    pr - EN_PROTECT gesendet, wenn der Benutzer versucht den Text zu verändern.
    re - Markiert als revidiert [nd]
    sh - Schattiert [nd]
    sm - Kleinbuchstaben [nd]
    st - Durchgestrichen
    sb - Tiefgestellt [nd]
    sp - Hochgestellt [nd]
    un - Unterstrichen
$bWord [optional] True
    Falls Text markiert ist, wird das Attribut auf alle Wörter im markierten Text angewendet.
    Falls nicht:
    Ist der Einfügepunkt in einem Wort, oder an dessen Ende, werden die Attribute auf das Wort angewendet.
    Ist er es nicht, werden die Attribute auf den eingefügten Text angewendet.
 False (Standard)
    Falls Text markiert ist, wird das Attribut auf den markierten Text angewendet.
    Falls nicht, werden die Attribute auf den eingefügten Text angewendet.

Rückgabewert

Erfolg: True
Fehler: False und setzt das @error Flag auf ungleich 0
@error: 101 - $hWnd ist kein Handle
103 - $bWord muss entweder True oder False sein
1021 - Länge von $sStatesAndEffects ist kein Vielfaches von 3
1022 - Erstes Zeichen der Gruppe ist nicht + oder -. Das Zeichen ist in @extended abgelegt.
1023 - Ein ungültiges Attribut-Kürzel. Ist in @extended abgelegt.

Bemerkungen

Manche Attribute werden in einem RichEdit Control nicht dargestellt; diese sind oben mit [nd] gekennzeichnet.

- - - - - - - - Erklärung der Controls - - - - - - - -

Verwandte Funktionen

_GUICtrlRichEdit_GetCharAttributes

Siehe auch

Suche nach EM_SETCHARFORMAT in der MSDN Bibliothek.

Beispiel

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

Global $g_idLbl_Msg, $g_hRichEdit

Example()

Func Example()
    Local $hGui = GUICreate("RichEdit Ermittelt bzw. setzt CharAttributes", 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_idLbl_Msg = GUICtrlCreateLabel("", 10, 235, 300, 60)
    Local $idBtn_Next = GUICtrlCreateButton("Nächste", 270, 310, 40, 30)
    GUISetState(@SW_SHOW)

    _GUICtrlRichEdit_SetText($g_hRichEdit, "Paragraph 1 ")
    Local $iMsg, $iStep = 0
    While True
        $iMsg = GUIGetMsg()
        Select
            Case $iMsg = $GUI_EVENT_CLOSE
                _GUICtrlRichEdit_Destroy($g_hRichEdit) ; erforderlich, sofern das Skript nicht abstürzt
                ; GUIDelete()   ; ist auch OK
                Exit
            Case $iMsg = $idBtn_Next
                $iStep += 1
                Switch $iStep
                    Case 1
                        _GUICtrlRichEdit_SetSel($g_hRichEdit, 0, 2)
                        _GUICtrlRichEdit_SetCharAttributes($g_hRichEdit, "+un")
                        Report("1. Zwei unterstrichene Zeichen")
                    Case 2
                        _GUICtrlRichEdit_SetSel($g_hRichEdit, 1, 5)
                        _GUICtrlRichEdit_SetCharAttributes($g_hRichEdit, "+bo")
                        Report("2. Einige Zeichen sind fett gedruckt.")
                    Case 3
                        ; Alle Texte auf den Desktop streamen, damit Sie die Einstellungen in Word einsehen können
                        _GUICtrlRichEdit_Deselect($g_hRichEdit)
                        _GUICtrlRichEdit_StreamToFile($g_hRichEdit, @DesktopDir & "\gcre.rtf")
                        GUICtrlSetState($idBtn_Next, $GUI_DISABLE)
                EndSwitch
        EndSelect
    WEnd
EndFunc   ;==>Example

Func Report($sMsg)
    $sMsg = $sMsg & @CRLF & @CRLF & _GUICtrlRichEdit_GetCharAttributes($g_hRichEdit)
    GUICtrlSetData($g_idLbl_Msg, $sMsg)
EndFunc   ;==>Report