# Funktionsreferenz

GUICtrlRecvMsg

Schickt eine Nachricht an ein Steuerelement und bringt Informationen in lParam zurück.

GUICtrlRecvMsg ( controlID , msg [, wParam [, lParamType]] )

Parameter

controlID | Die Identifikationsnummer des Steuerelements (Control-ID), wie von einer GUICtrlCreate... Funktion zurückgegeben.
msg | Typ der Nachricht, die an das Steuerelement gesendet werden soll, wie in der Microsoft-Dokumentation zu Windows controls definiert.
wParam | [optional] Eine Ganzzahl, der erste Parameter, der an ein Control geschickt wird.
lParamType | [optional] Definiert den Typ von lParam, der von der Funktion zurückgegeben wird: 0 (Standard) für wParam und lParam, 1 für einen lParam String (Zeichenkette), 2 für eine lParam RECT Struktur.

Bemerkungen

Diese Funktion erlaubt es, spezielle Windows-Nachrichten (messages) über die SendMessage API von Windows direkt an ein Steuerelement zu schicken. Sie wird verwendet, um bestimmte Möglichkeiten von Steuerelementen zu nutzen, die über die einfachen GUICtrlRead() und GUICtrlSet...()-Funktionen nicht erreichbar sind.
Wenn die Parameter wParam und lParamType nicht angegeben werden, wird ein Array aus zwei Elementen zurückgegeben (LPwParam, LPlParam).
Die RECT Struktur wird als Array aus 4 Elementen zurückgegeben (Left, Top, Right, Bottom) (übersetzt: links, oben, rechts, unten) .

Siehe auch

GUICtrlSendMsg, GUICtrlSet..., GUIGetMsg, GUICtrlRead

Beispiel

#include <GUIConstants.au3>
GUICreate("My GUI") ; will create a dialog box that when displayed is centered
$nEdit = GUICtrlCreateEdit ("line 0", 10,10)
GUICtrlCreateButton ("Ok", 20,200,50)
GUISetState ()
for $n=1 to 5
GUICtrlSetData ($nEdit, @CRLF & "line "& $n)
next
$EM_GETSEL = 0x00B0
; Run the GUI until the dialog is closed
Do
$msg = GUIGetMsg()
if $msg >0 then
$a=GUICtrlRecvMsg($nEdit, $EM_GETSEL)
GUICtrlSetState($nEdit,$GUI_FOCUS) ; set focus back on edit control
; will display the wParam and lParam values return by the control
MsgBox(0,"Current selection",StringFormat("start=%d end=%d", $a[0], $a[1]))
endif
Until $msg = $GUI_EVENT_CLOSE