![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Cita:
Básicamente usas el evento OnIdle de una componente TApplicationEvents que se genera cada vez que la aplicación no se encuentra procesando un mensaje, o sea, virtualmente casi siempre, de manera que evitas el uso de un Timer. En este evento usas funciones de la API de Windows para: 1. Determinar la ventana que esté bajo el cursor. 2. Determinar si esta ventana es de tipo ComboLBox- el tipo de ventana de la lista desplegable del combo. 3. En tal caso, obtener el ítem de la lista bajo el cursor. Con esto ya tienes el texto que debes mostrar en el hint y mandando el mensaje LB_GETITEMRECT a la lista obtienes la posición del ítem y por tanto el lugar donde debes desplegar el hint. Tiene el problema de que si tienes varios combos, será un poco difícil determinar a cuál de ellos pertenece la lista aunque supongo que podrías examinar la propiedad DroppedDown de cada uno de ellos para ver cuál tiene desplegada la lista. ----- Otra opción es crearte un derivado de TComboBox que haga lo siguiente: 1. Determine el identificador de su lista desplegable 2. Reemplace el manejador de ventana de esta lista para poder detectar el mensaje WM_MOUSEMOVE y saber así cuándo mostrar el hint. 3. Determine ahí mismo si realmente es necesario mostrar el hint comparando la longitud del ítem con el ancho de la lista. 4. Si es necesario mostrar el hint, crear una ventana THintWindow para mostrarlo. Si te interesa, puedes ver la componente TComboHintsBox que hace todo esto en mi página. Apenas la he programado así que muy posiblemente tenga detalles que haya que revisar pero es un comienzo... // Saudos |
|
#2
|
||||
|
||||
|
Un par de días alejado de internet casi hacen que me pierda este magnífico post de el amigo Román, pues solo me resta agradecerte y comenzar a probar lo que me dices, además confesarte que con cada post que publicas aprendo más que en una hora búsquedas por internet(no por esto voy a dejar de esforzarme buscando antes de lanzar una pregunta) pero de veras que la calidad de tus respuestas es admirable, sin menospreciar a los demás chicos del equipo que también se esfuerzan y ofrecen el tiempo del que disponen en ayuda de los necesitados.
En fin mil gracias a todos, que tengan una feliz navidad y un próspero año nuevo. Saludos Yusnerqui
__________________
Lo importante no es llegar primero, sino saber llegar. Para que puedas llegar mejor lee la Guia de Estilo |
|
#3
|
|||
|
|||
|
buenas la verdad estoy trando de hacer lo mismo que el amigo yusnerki, pero no he encontrado nada y la pagina que publica roman no se encuentra, alguien que sepa la solucion me podria ayudar....
muchas gracias
__________________
JaiMelendez |
|
#4
|
||||
|
||||
|
#5
|
|||
|
|||
|
gracias Roman, la verdad hay muy pocas personas como usted... que ayudan a los demas de una forma desinterezada.
__________________
JaiMelendez |
|
#7
|
||||
|
||||
|
Amigo Roman me encuentro en la misma tesitura que el resto y no puedo descargar tu componente.
Se que el post es mega antiguo pero ¿no lo tendrias aun para podermelo pasar? Me harias un favor grande. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|