您的位置:首页 > 编程语言

C言语图形体例编程,天分鼠标(1)

2011-03-07 18:40 246 查看
原帖及联络:http://bbs.bc-cn.net/dispbbs.asp?boardid=5&id=124611

/纨绔子弟纨绔子弟纨绔子弟纨绔子弟纨绔子弟民主民主***
╭═══════════════╮
║ ║
╭══════┤ 清清凉 ├══════╮
║ ║ ║ ║
║ ╰═══════════════╯ ║
 ║ ║
 ║ ║
 ║ 声明:本递次由清清凉点窜收拾整顿 ║
║ 分析: ║
║ ║
║ C言语交换群:31545052 (唯C同盟) ║
║ 比赛争论机编程交换群:31544991 ║
 ║ 自己QQ:527274766 ║
║ 多多交换,配合进步! ║
║ —— 0501xql ║
║ ║
║ ╭───────────────────────╮ ║
╰══┤ E-mail:0501xql@163.com ├══╯
╰───────────────────────╯
纨绔子弟纨绔子弟纨绔子弟纨绔子弟纨绔子弟民主民主***/

/* ----- C言语图形体例编程,天分鼠标。 -----*/

int Msinit()
{ /* 初始化鼠标*/
int recored;

regs.x.ax=0;
int86(0x33,®s,®s);
recored=regs.x.ax;
if(recored==0)
{ printf("Mouse not found !\n");
getch();return 0;
}
regs.x.ax = 1; /* 显示鼠标*/
int86(0x33,®s,®s);
return recored;
}

void MskindMath() /*比赛争论鼠标的样子*/
{ /*Point hotspot[]={{0,11},{0,0},{4,0},{4,0}};抢手*/
int i,j,jj,k;
int full,kind;
long UpNum[2][16] = {/* hand */
0xf3ff,0xe1ff,0xe1ff,0xe1ff,
0xe001,0xe000,0xe000,0xe000,
0x8000,0x0000,0x0000,0x0000,
0x0000,0x0000,0x8001,0xc003,

0x3fff,0x1fff,0x0fff,0x07ff,/* arrow箭头 */
0x03ff,0x01ff,0x00ff,0x007f,
0x003f,0x00ff,0x01ff,0x10ff,
0x30ff,0xf87f,0xf87f,0xfc3f,
};
long DownNum[2][16]={/* hand */
0x0c00,0x1200,0x1200,0x1200,
0x13fe,0x1249,0x1249,0x1249,
0x7249,0x9001,0x9001,0x9001,
0x8001,0x8001,0x4002,0x3ffc,

0x0000,0x4000,0x6000,0x7000,/* arrow箭头 */
0x7800,0x7c00,0x7e00,0x7f00,
0x7f80,0x7e00,0x7c00,0x4600,
0x0600,0x0300,0x0300,0x0180,
};
kind = (Mskind>>1)%2; /* 手形照样箭头*/
full = Mskind%2; /* 能否空心*/

for(i=0;i<16;i )
{
j=jj=15;
while(UpNum[kind][i]!=0)
{
up[i][j]=UpNum[kind][i]%2;
j--;
UpNum[kind][i]/=2;
}
while(DownNum[kind][i]!=0)
{
down[i][jj--]=DownNum[kind][i]%2;
DownNum[kind][i]/=2;
}
for(k=j ;k>=0;k--) up [i][k]=0;
for(k=jj;k>=0;k--) down[i][k]=0;
for(k=0;k<16;k )
{ /*四种组合体例*/
if(up[i][k]==0&&down[i][k]==0)
{ /* 能否为空心*/
if(full) mouse_draw[i][k]=1;
else mouse_draw[i][k]=2;
}

版权声明:
原创作品,容许转载,转载时请务必以超链接体例标明文章 原始情由 、作者信息和本声明。否则将追查法令责任。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: