Visual Basic - consulta sobre combobox

Life is soft - evento anual de software empresarial
 
Vista:

consulta sobre combobox

Publicado por Bella Panamá (80 intervenciones) el 25/02/2001 02:38:10
cómo puedo hacer que cuando el cursor este en un combobox, éste se habra automáticamente para ver la data??
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:consulta sobre combobox

Publicado por edu (423 intervenciones) el 25/02/2001 07:36:29
Mi adorable Belleza aqui te envio la solucion a tu problema:

El comboBox como abras de notar no tiene los eventos para detectar el mouse es deicr MOUSE MOVE, para hacer que acepte eso evento seria mostrarte una cantidad de API'S Constantes y codigos que te pueden complicar tu programa.

Para ello vamos haer un truquito pon un LABEL TRANSPARENTE DEBAJO del COMBOBOX Los bordes del LABEL los pones un poco mas grande qu eel combo

Es decir si el combo esta en la posicion 1000,1000 el label lo pones 880,880 es decir que sobrasalga del combo igual haces con la otra esquina. Dejo en claro que la separacion de mis puntos del FORM es de 60. Por eso reste 120.

Con esto lo que hacemos es que cuando el puntero vaya para el COMBO pase primero por el LABEl y hacemos lo siguiente:

Declare esto en tu formulario
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Const CB_SHOWDROPDOWN = &H14F

Y en el evento MOUSE_MOVE del LABEL pon esto
Private Sub label1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
SendMessage Combo1.hWnd, CB_SHOWDROPDOWN, True, 0
End Sub

Y listo cuando el puntero vaya para el combo primero le detecta el LABEL y luego abre la ventana del COMBO.

Atte.
Eduardo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar