# Funktionsreferenz

GUICtrlSendMsg

Schickt eine Nachricht an ein Steuerelement.

GUICtrlSendMsg ( controlID, msg , wParam, lParam )

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 | Der erste Parameter, der an das Steuerelement gesendet wird.
lParam | Der zweite Parameter, der an das Steuerelement gesendet wird.

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.
Die Parameter (wParam and lParam) können Ganzzahlen oder Zeichenketten sein.
GUICtrlSendMsg sollte für Nachrichten verwendet werden, die keinen speziellen Rückgabewert haben. Für kompliziertere Nachrichten, für die man zusätzliche Daten empfangen können muss, musst du die Funktion GUICtrlRecvMsg() verwenden.

Siehe auch

GUICtrlRecvMsg, GUICtrlCreate..., GUICtrlSet..., GUIMsg, 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_LINEINDEX = 0x00BB
$EM_LINEFROMCHAR = 0x00C9
; Run the GUI until the dialog is closed
Do
$msg = GUIGetMsg()
if $msg >0 then
$n=GUICtrlSendMsg ($nEdit, $EM_LINEINDEX,-1,0)
$nline=GUICtrlSendMsg( $nEdit, $EM_LINEFROMCHAR,$n,0)
GUICtrlSetState ($nEdit,256) ; set focus
MsgBox (0,"Currentline",$nLine)
endif
Until $msg = $GUI_EVENT_CLOSE