Problemas con el cursor del ratón
No sé por qué pero a veces el cursor del ratón se queda invisible en el formulario activo y por lo tanto es complicado saber dónde demonios se está.
En principio esto me ocurría en un formulario que tenía algunos TComboBox, y siguiendo una sugerencia hecha en otro foro, los he reemplazado pero da lo mismo. Ahora mo lo hace igual pero sólo en un TCheckListBox y sólo al marcar una primera casilla; si se marca una segunda, ya sea con el teclado o adivinando dónde está el ratón, se vuelve a mostrar y ya no se oculta. ¿Hay alguna forma de hacer que dicho cursor sea siempre visible? Salvo, claro está, que se le oculte exprofeso. |
Si no lo has cambiado tu, ¿puede ser que algún componente de terceros te lo esté "tocando"?
|
Cita:
|
Hola.
Al ser un comportamiento errático es bastante difícil encontrar la parte en que se produce y sin conocer el código, ciertamente es aventurar la respuesta. Pero, para verificar si algún componente (o línea de código) está ocultando el cursor, intentá usando la función ShowCursor, cuando desaparezca: Código PHP:
.h Código PHP:
Código PHP:
Saludos :) Pd: Me olvidaba, cuando sucede ¿ Revisaste si se está insertando algún dispositivo físico que pudiera estar suprimiendo el cursor ? |
Muchísimas gracioas por tu respuesta.
Cita:
Cita:
|
Pero eso no es una solución, es un parche.
Podrías poner un BP en la línea donde se llama a ShowCursor y seguir con f7 a ver donde sales. También podrías abrirlo en un depurador cómo Ollydbg y poner un BP condicional por ejemplo en TranslateMessage con el mensaje usado para ocultar el cursor que creo seria WM_SETCURSOR y a partir de ahí tracear y ver desde donde fue enviado ese mensaje. Es algo más complejo que un parche pero es mejor solución si el problema lo está creando tu código ya que encontrarás el fallo y podrás corregirlo sin necesidad de parchear nada. |
¿Seguro que no llamas en tu código a SetCursor? Si lo llamas sin parámetro o con un parámetro inválido el cursor desaparece.
Mira aqui: https://msdn.microsoft.com/es-es/lib...(v=vs.85).aspx |
Completamente seguro.
|
Puedes subir el binario sin el parche para ver donde falla exactamente? A ser posible con información de depuración para poder seguir mejor en el depurador.
|
La franja horaria es GMT +2. Ahora son las 15:03:05. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi