国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

通過(guò)并行機(jī)制處理鼠標(biāo)和鍵盤(pán)

2019-11-17 05:31:30
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
該程序通過(guò)并行機(jī)制處理鼠標(biāo)和鍵盤(pán)的消息,為了簡(jiǎn)化程序裁減了一些代碼,該程序可用為基礎(chǔ)在該程序上添加代碼可用于文本編輯,游戲和其他鼠標(biāo)鍵盤(pán)通用的程序.#include <graphics.h>
#include <stdio.h>
#include <conio.h>
#include <dos.h>
#include <bios.h>
union REGS regs;
unsigned size;
void far *Buffer;
int ScanKey();
void Mouse();
void Init();
int InitMouseDrive();
int main()
{
  int key,x,y,cx,cy;
  x=1,y=1;
  Init();/*初始化圖形模式*/
  if(InitMouseDrive(&cx,&cy))/*安裝鼠標(biāo)*/
  {
      exit(0);
  }
  size=imagesize(cx-2,cy-2,cx+2,cy+2);
  Buffer=(void *)malloc(size);
  getimage(cx-2,cy-2,cx+2,cy+2,Buffer);
  do
  {
    if(kbhit())
      {
       key=ScanKey();/*得到按鍵結(jié)果*/
       rectangle(x,y,x+5,y+5);
       x+=10;
       if(x>=630)
  {
    x=1;
    y+=10;
  }
      }
       else
 Mouse(&cx,&cy);/*訪問(wèn)鼠標(biāo)信息的到新的光標(biāo)坐標(biāo)*/
   }while(key!=0x01);
closegraph();
}
int ScanKey()/*鍵盤(pán)*/
{
 return(bioskey(0)>>8);
}
void Init()/*圖形驅(qū)動(dòng)*/
{
 int graphdrive=0,graphmode=0;
 initgraph(&graphdrive,&graphmode,"");
 setcolor(15);
}
void Mouse(int *px,int *py)/*鼠標(biāo)*/
{
 int mx,my,omx,omy;
 regs.x.ax=3;
 int86(0x33,&regs,&regs);
 omx=*px,omy=*py;
 mx=regs.x.cx;
 my=regs.x.dx;
 if(mx!=*pxmy!=*py)/*當(dāng)鼠標(biāo)位置改變是重新繪制光標(biāo)*/
 {
   *px=mx; *py=my;
   putimage(omx-2,omy-2,Buffer,COPY_PUT);
   free(Buffer);
   size=imagesize(mx-2,my-2,mx+2,my+2);
   Buffer=(void *)malloc(size);
   getimage(mx-2,my-2,mx+2,my+2,Buffer);
   rectangle(mx-2,my-2,mx+2,my+2);
 }
}
int InitMouseDrive(int *rpx,int *rpy)/*鼠標(biāo)驅(qū)動(dòng)*/
{
  int Found=0;
  regs.x.ax=0;
  int86(0x33,&regs,&regs);
  Found=regs.x.ax;
  regs.x.ax=7;
  regs.x.cx=3;
  regs.x.dx=635;
  int86(0x33,&regs,&regs);
  regs.x.ax=8;
  regs.x.cx=3;
  regs.x.dx=480;
  int86(0x33,&regs,&regs);
  regs.x.ax=4;
  regs.x.cx=*rpx=640/2;
  regs.x.dx=*rpy=480/2;
  int86(0x33,&regs,&regs);
  if(Found==0)
     return 1;
  return 0;
}


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 全椒县| 霍山县| 汝南县| 蓝山县| 侯马市| 乌审旗| 视频| 达孜县| 金阳县| 探索| 台江县| 宕昌县| 长兴县| 常熟市| 丹东市| 海伦市| 扎兰屯市| 留坝县| 永定县| 武邑县| 青铜峡市| 河源市| 九台市| 西昌市| 榕江县| 华池县| 诸城市| 阿坝县| 阿巴嘎旗| 侯马市| 凤翔县| 喀什市| 万宁市| 夹江县| 阳东县| 康乐县| 榆林市| 黎平县| 马尔康县| 台安县| 肥东县|