In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Hola, deseo durante un proceso cambiar el cursor del raton
con un archivo .cur, para tal efecto he agregado dicho archivo al gestor de recursos, pero ahora no cuentro como usarlo.
de momento uso los tipicos wait y arrow propios, pero deseo usar uno propio. he buscado en los ejemplos y no encontre nada relativo a esto
::oWaitCursor := TCursor():LoadFromResource("waitTest") //en el gestor de recuros asi esta nombrado
Application:lBusy := .t.
//proceso que lleva su tiempo
Application:lBusy := .f.
lo que estás haciendo está correcto. El problema es que windows envía continuamente mensajes WM_SETCURSOR a todos los controles para que seleccionen qué cursor hay que mostrar. Es decir, que aunque cambies el cursor con SetCursor(), en cuanto se recibe un mensaje WM_SETCURSOR se vuelve a cambiar, y ni siquiera llegas a ver tu cursor.
Por otro lado, Application:lBusy := .T. funciona porque Xailer se encarga de responder con CursorWait() en todos los controles cuando se recibe un mensaje WM_SETCURSOR. En tu caso, lo que puedes hacer es sobrecargar el método WMSetCursor de TControl y devolver ahí el cursor que tú quieras. P.ej.: