#include <dos.h> #include <conio.h> void setcursor(unsigned int tipo); void cambia_cursore(int insmode); void initcursor(void); unsigned int getcursor(void); unsigned int oldcursor,shortcursor,tallcursor,nocursor=0x2000; void setcursor(unsigned int tipo) /* Setta l'aspetto del cursore */ { union REGS val; val.h.ah = 1; val.x.cx = tipo; int86(0X10, &val, &val); } unsigned int getcursor(void) /* Restituisce l'aspetto del cursore*/ { union REGS val; val.h.ah = 3; val.h.bh = 0; int86(0X10, &val, &val); return(val.x.cx); } void cambia_cursore(int insmode) /* Cambia l'aspetto del cursore basandosi sull'attuale modalità di inserimento*/ { if (insmode) setcursor(tallcursor); else setcursor(shortcursor); } void initcursor(void) /*Inizializza i diversi tipi di cursore*/ { struct text_info ti; gettextinfo(&ti); oldcursor=getcursor(); if(ti.currmode==MONO){ shortcursor=0x0A0C; tallcursor=0x090C; } else{ shortcursor=0x0607; tallcursor=0x0507; } }
Ultimo aggiornamento 30/09/1999