Funktionsreferenz

_GUICtrlComboBox_GetDroppedControlRect

Ermittelt die Bildschirmkoordinaten einer Combobox in seinem aufgeklappten Zustand

#Include <GuiComboBox.au3>
_GUICtrlComboBox_GetDroppedControlRect($hWnd)

 

Parameter

$hWnd Handle des Controls

 

Rückgabewert

Erfolg: Array mit dem folgenden Format:
    [0] - X Koordinate der oberen linken Ecke des Rechtecks
    [1] - Y Koordinate der oberen linken Ecke des Rechtecks
    [2] - X Koordinate der unteren rechten Ecke des Rechtecks
    [3] - Y Koordinate der unteren rechten Ecke des Rechtecks

 

Bemerkungen

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

 

Verwandte Funktionen

_GUICtrlComboBox_GetDroppedControlRectEx

 

Beispiel


#AutoIt3Wrapper_Au3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
#include <GUIComboBox.au3>
#include <GuiConstantsEx.au3>
#include <Constants.au3>

Opt('MustDeclareVars', 1)

$Debug_CB = False ; Prüft den Klassennamen (ClassName), der an die ComboBox/ComboBoxEx-Funktion übergeben wird. Setze dies versuchsweise auf True und verwende dann ein Handle zu einem anderen Control, um die Funktionsweise zu verstehen.

Global $iMemo

_Main()

Func _Main()
    Local $aRect, $hCombo

    ; Erstellt eine GUI
    GUICreate("ComboBox: Ermittelt die Bildschirmkoordinaten im ausgeklappten Zustand", 530, 296)
    $hCombo = GUICtrlCreateCombo("", 2, 2, 526, 296)
    $iMemo = GUICtrlCreateEdit("", 2, 32, 526, 266, 0)
    GUICtrlSetFont($iMemo, 9, 400, 0, "Courier New")
    GUISetState()

    ; Fügt Dateien hinzu
    _GUICtrlComboBox_BeginUpdate($hCombo)
    _GUICtrlComboBox_AddDir($hCombo, @WindowsDir & "\*.exe")
    _GUICtrlComboBox_EndUpdate($hCombo)

    ; Ermittelt die Bildschirmkoordinaten der Combobox mit ausgeklappter Listbox
    $aRect = _GUICtrlComboBox_GetDroppedControlRect($hCombo)
    MemoWrite("X-Koordinate der oberen linken Ecke ......: " & $aRect[0])
    MemoWrite("Y-Koordinate der oberen linken Ecke ......: " & $aRect[1])
    MemoWrite("X-Koordinate der unteren rechten Ecke ....: " & $aRect[2])
    MemoWrite("Y-Koordinate der unteren rechten Ecke ....: " & $aRect[3])

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

; Schreibt eine Zeile in das Memo Control
Func MemoWrite($sMessage)
    GUICtrlSetData($iMemo, $sMessage & @CRLF, 1)
EndFunc   ;==>MemoWrite