|
|
API : cboDropDown
| Autor/es: Juan M Afán de Ribera | | Pregunta : ¿Cómo puedo saber a través de código si un cuadro combinado está desplegado? | Respuesta : La función cboDropDown devuelve True o False, según esté desplegado un cuadro combinado o no.
Pega el siguiente código en un módulo estandar | Private Declare Function FindWindow Lib "user32" _
Alias "FindWindowA" _
(ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long
Private Declare Function IsWindowVisible Lib "user32" _
(ByVal hwnd As Long) As Long
Private Declare Function GetParent Lib "user32" _
(ByVal hwnd As Long) As Long
Function cboDropDown() As Boolean
Dim hCombo As Long
' localizamos una ventana del desplegable
hCombo = FindWindow("ODCombo", vbNullString)
' si la ventana existe ...
If hCombo Then
' si la ventana pertenece a Access ...
If GetParent(hCombo) = Access.hWndAccessApp Then
' si la ventana es visible ...
If IsWindowVisible(hCombo) Then
' hay un cuadro combinado de
' Access desplegado
cboDropDown = True
End If
End If
End If
End Function
'---------------------------------------------------------
| Ejemplos: | Temas relacionados: |
|