Funktionreferenz


_GUICtrlEdit_CharFromPos

Beschreibung anzeigen in

Ermittelt Informationen über das Zeichen, welches sich am nächsten zu einem festgelegten Punkt im Client-Bereich des Fensters befindet

#include <GuiEdit.au3>
_GUICtrlEdit_CharFromPos ( $hWnd, $iX, $iY )

Parameter

$hWnd Control-ID / Handle des Controls
$iX Horizontale Position des Bezugspunkts
$iY Vertikale Position des Bezugspunkts

Rückgabewert

Gibt ein Array mit dem folgenden Format zurück:
    [0] - 0-basierender Index des Zeichens, welches sich am nächsten zu einem festgelegten Punkt befindet
    [1] - 0-basierender Index der Zeile, welche das Zeichen im Parameter 0 enthält

Bemerkungen

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

Beispiel

#include <GUIConstantsEx.au3>
#include <GuiEdit.au3>
#include <MsgBoxConstants.au3>

Example()

Func Example()
    Local $aCharPos[2], $idEdit, $x = 100, $y = 20

    ; Erstellt eine GUI
    GUICreate("Edit: Ermittelt Index und Zeile des Zeichens, das dem Fensterpunkt x,y am nächsten ist", 600, 300)
    $idEdit = GUICtrlCreateEdit("Dies ist ein Test." & @CRLF & "Eine andere Zeile.", 2, 2, 394, 268)
    GUISetState(@SW_SHOW)

    _GUICtrlEdit_AppendText($idEdit, @CRLF & "An das Ende anhängen?")

    $aCharPos = _GUICtrlEdit_CharFromPos($idEdit, $x, $y)

    MsgBox($MB_SYSTEMMODAL, "Information (Alle Werte sind 0-basierend!)", StringFormat("Index des Zeichens, das dem Punkt [%d,%d] am nächsten liegt: [%2d]", $x, $y, $aCharPos[0]) & @CRLF & _
            StringFormat("Zeile, die dem Punkt [%d,%d] am nächsten liegt: [%2d]", $x, $y, $aCharPos[1]))

    ; Die Schleife wiederholt sich, bis der Benutzer die Beenden-Aktion der GUI auslöst.
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE
    GUIDelete()
EndFunc   ;==>Example