SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: © Jonathan © en Sábado 25 de Enero de 2003, 14:21

Título: Re: Cambiar el Puntero al Mouse
Publicado por: © Jonathan © en Sábado 25 de Enero de 2003, 14:21
Hola amigos esta ves el tipo de ayuda que les pedire, es con respecto a el puntero del mouse.

    Tegno un fuente en c++, que me indica como hacerlo, pero lo quiero pasar a c y no lo logro entender, mi problema consiste en que no se como elaborar un programa en C para cambiar el puntero del muse.

    No quiero hacer un programa que cambie la flecha del mouse, solo quiero hacer un programa que me enseñe los pasos, funciones, ect; a seguir para poder cambiar el puntero.

    Tengo un libro en el cual me explica como hacerlo con funciones en ASM y con la interrupcion 0x09, pero no entiendo como hacerlo funcionar.
      Saludos y perdon por el embarullo que les proboque.:D
Título: Re: Cambiar el Puntero al Mouse
Publicado por: Satyr en Lunes 27 de Enero de 2003, 06:48
weno aki te va la funcion del Mouse en ASM

//llamado de la funcion
CambiaPtr(Mano);


//Dibujo de los punteros

unsigned int Reloj[]=
      {0x0000,0x0000, 0x0000,0xC003,0xE007,0xF00F,0xF81F,0xFC3F,
       0xFC3F,0xF81F,0xF00F,0xE007,0xC003,0x0000,0x0000,0x0000,
       0x0000,0x7FFE,0x0000,0x1FF8,0x0FF0,0x0000,0x0000,0x0000,
       0x0180,0x0340,0x07E0,0x0E78,0x1818,0x0000,0x7FFE,0x0000};

unsigned int Flecha[]=
      {0x9FFF,0x8FFF,0x87FF,0x83FF,0x81FF,0x80FF,0x807F,0x803F,
       0x801F,0x800F,0x80FF,0x887F,0x987F,0xFC3F,0xFC3F,0xFE3F,
       0x0000,0x2000,0x3000,0x3800,0x3C00,0x3E00,0x3F00,0x3F80,
       0x3FC0,0x3E00,0x3600,0x2300,0x0300,0x0180,0x0180,0x0000};

unsigned int Cruz[]=
      {0xFFFF,0xFE3F,0xFE3F,0xFE3F,0xFE3F,0xFE3F,0xFE3F,0x8000,
       0x8000,0x8000,0xFE3F,0xFE3F,0xFE3F,0xFE3F,0xFE3F,0xFE3F,
       0x0000,0x0140,0x0140,0x0140,0x0140,0x0140,0x0140,0x7E3F,
       0x0000,0x7E3F,0x0140,0x0140,0x0140,0x0140,0x0140,0x0140};

unsigned int Circulo[]=
      {0xF01F,0xE00F,0xC007,0x8003,0x0441,0x0C61,0x0381,0x0381,
       0x0381,0x0C61,0x0441,0x8003,0xC007,0xE00F,0xF01F,0xFFFF,
       0x0000,0x07C0,0x0920,0x1110,0x2108,0x4004,0x4004,0x783C,
       0x4004,0x4004,0x2108,0x1110,0x0920,0x07C0,0x0000,0x0000};

unsigned int Mano[]=
      {0xF3FF,0xE1FF,0xE1FF,0xE1FF,0xE1FF,0xE049,0xE000,0x8000,
       0x0000,0x0000,0x07FC,0x07F8,0x9FF9,0x8FF1,0xC003,0xE007,
       0x0C00,0x1200,0x1200,0x1200,0x1200,0x13B6,0x1249,0x7249,
       0x9249,0x9001,0x9001,0x8001,0x4002,0x4002,0x2004,0x1FF8};

unsigned int Martillo[]=
      {0x8003,0x0001,0x0001,0x1831,0x1011,0x0001,0x0001,0x8003,
       0xF83F,0xF83F,0xF83F,0xF83F,0xF83F,0xF83F,0xF83F,0xF83F,
       0x0000,0x3FF8,0x4284,0x4104,0x4284,0x4444,0x3FF8,0x0380,
       0x0380,0x0380,0x0380,0x0380,0x0380,0x0380,0x0380,0x0000};

// Cambia la apariencia del cursor del mouse
void CambioPtr(unsigned int *forma)
{
   asm mov ax, 09h
   asm xor bx, bx
   asm xor cx, cx
   asm les dx, [forma]   // es:dx direccion donde se encuentra el nuevo cursor
   asm int 33h               // del mouse
}




(http://www.geocities.com/satyr6six6/satyr00.jpg)
Título: Cambiar el Puntero al Mouse
Publicado por: © Jonathan © en Lunes 27 de Enero de 2003, 14:12
Gracias de nuevo Satyr, siempre me eres de mucha ayuda, te agradesco infinitamente tu ayuda, en verdad me biene de mil maravillas.
     Saludos.