C++游戏编程之模拟实现键盘打字程序_第1页
C++游戏编程之模拟实现键盘打字程序_第2页
C++游戏编程之模拟实现键盘打字程序_第3页
C++游戏编程之模拟实现键盘打字程序_第4页
C++游戏编程之模拟实现键盘打字程序_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第C++游戏编程之模拟实现键盘打字程序程序演示:

程序代码:

#includegraphics.h

#includeiostream

#includeconio.h

#includetime.h

usingnamespacestd;

classKeyBoard

public:

KeyBoard();

~KeyBoard();

intrandomKeys();//产生1~26的随机值

voidshowBoard();//画键盘

voidshowText();//显示键值

voidacceptAction();//获取响应

private:

intrandomKey;//随机值

intStruct;//支撑体

intkeySize;//键块大小

intx1,y1;//第一行的第一个键块左上角坐标

intx2,y2;//第二行的第一个键块左上角坐标

intx3,y3;//第三行的第一个键块左上角坐标

KeyBoard::KeyBoard()

Struct=10;

keySize=50;

x1=50,y1=50;

x2=70,y2=110;

x3=90,y3=170;

initgraph(1000,400);

showBoard();

_getch();

KeyBoard::~KeyBoard()

voidKeyBoard::showText()

settextcolor(WHITE);

TCHARfirstRowKeys[100]=_T("QWERTYUIOP");//定义字符数组

settextstyle(20,0,_T("楷体"));

outtextxy(65,60,firstRowKeys);

TCHARsecondRowKeys[100]=_T("ASDFGHJKL");//定义字符数组

settextstyle(20,0,_T("楷体"));

outtextxy(85,125,secondRowKeys);

TCHARthirdRowKeys[100]=_T("ZXCVBNM");//定义字符数组

settextstyle(20,0,_T("楷体"));

outtextxy(105,190,thirdRowKeys);

voidKeyBoard::showBoard()

inttx1=x1,tx2=x2,tx3=x3;

showText();

for(inti=0;ii++)

rectangle(x1,y1,x1+keySize,y1+keySize);

x1=x1+keySize+Struct;

x1=tx1;

for(inti=0;ii++)

rectangle(x2,y2,x2+keySize,y2+keySize);

x2=x2+keySize+Struct;

x2=tx2;

for(inti=0;ii++)

rectangle(x3,y3,x3+keySize,y3+keySize);

x3=x3+keySize+Struct;

x3=tx3;

intKeyBoard::randomKeys()

srand((unsigned)time(NULL));

randomKey=rand()%26+1;//1到26

returnrandomKey;

voidKeyBoard::acceptAction()

inttx1=x1,tx2=x2,tx3=x3;

intflag=randomKeys();

charinput;

switch(flag)

case1:

setlinecolor(GREEN);

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='Q'||input=='q')

setlinecolor(WHITE);

else

while(1)

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='Q'||input=='q')

setlinecolor(WHITE);

break;

break;

case2:

setlinecolor(GREEN);

x1=x1+keySize+Struct;

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='W'||input=='w')

setlinecolor(WHITE);

else

while(1)

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='W'||input=='w')

setlinecolor(WHITE);

break;

x1=tx1;

break;

case3:

setlinecolor(GREEN);

x1=x1+2*(keySize+Struct);

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='E'||input=='e')

setlinecolor(WHITE);

else

while(1)

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='E'||input=='e')

setlinecolor(WHITE);

break;

x1=tx1;

break;

case4:

setlinecolor(GREEN);

x1=x1+3*(keySize+Struct);

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='R'||input=='r')

setlinecolor(WHITE);

else

while(1)

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='R'||input=='r')

setlinecolor(WHITE);

break;

x1=tx1;

break;

case5:

setlinecolor(GREEN);

x1=x1+4*(keySize+Struct);

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='T'||input=='t')

setlinecolor(WHITE);

else

while(1)

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='T'||input=='t')

setlinecolor(WHITE);

break;

x1=tx1;

break;

case6:

setlinecolor(GREEN);

x1=x1+5*(keySize+Struct);

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='Y'||input=='y')

setlinecolor(WHITE);

else

while(1)

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='Y'||input=='y')

setlinecolor(WHITE);

break;

x1=tx1;

break;

case7:

setlinecolor(GREEN);

x1=x1+6*(keySize+Struct);

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='U'||input=='u')

setlinecolor(WHITE);

else

while(1)

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='U'||input=='u')

setlinecolor(WHITE);

break;

x1=tx1;

break;

case8:

setlinecolor(GREEN);

x1=x1+7*(keySize+Struct);

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='I'||input=='i')

setlinecolor(WHITE);

else

while(1)

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='I'||input=='i')

setlinecolor(WHITE);

break;

x1=tx1;

break;

case9:

setlinecolor(GREEN);

x1=x1+8*(keySize+Struct);

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='O'||input=='o')

setlinecolor(WHITE);

else

while(1)

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='O'||input=='o')

setlinecolor(WHITE);

break;

x1=tx1;

break;

case10:

setlinecolor(GREEN);

x1=x1+9*(keySize+Struct);

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='P'||input=='p')

setlinecolor(WHITE);

else

while(1)

rectangle(x1,y1,x1+keySize,y1+keySize);

input=_getch();

if(input=='P'||input=='p')

setlinecolor(WHITE);

break;

x1=tx1;

break;

case11:

setlinecolor(GREEN);

rectangle(x2,y2,x2+keySize,y2+keySize);

input=_getch();

if(input=='A'||input=='a')

setlinecolor(WHITE);

else

while(1)

rectangle(x2,y2,x2+keySize,y2+keySize);

input=_getch();

if(input=='A'||input=='a')

setlinecolor(WHITE);

break;

x2=tx2;

break;

case12:

setlinecolor(GREEN);

x2=x2+keySize+Struct;

rectangle(x2,y2,x2+keySize,y2+keySize);

input=_getch();

if(input=='S'||input=='s')

setlinecolor(WHITE);

else

while(1)

rectangle(x2,y2,x2+keySize,y2+keySize);

input=_getch();

if(input=='S'||input=='s')

setlinecolor(WHITE);

break;

x2=tx2;

break;

case13:

setlinecolor(GREEN);

x2=x2+2*(keySize+Struct);

rectangle(x2,y2,x2+keySize,y2+keySize);

input=_getch();

if(input=='D'||input=='d')

setlinecolor(WHITE);

else

while(1)

rectangle(x2,y2,x2+keySize,y2+keySize);

input=_getch();

if(input=='D'||input=='d')

setlinecolor(WHITE);

break;

x2=tx2;

break;

case14:

setlinecolor(GREEN);

x2=x2+3*(keySize+Struct);

rectangle(x2,y2,x2+keySize,y2+keySize);

input=_getch();

if(input=='F'||input=='f')

setlinecolor(WHITE);

else

while(1)

rectangle(x2,y2,x2+keySize,y2+keySize);

input=_getch();

if(input=='F'||input=='f')

setlinecolor(WHITE);

break;

x2=tx2;

break;

case15:

setlinecolor(GREEN);

x2=x2+4*(keySize+Struct);

rectangle(x2,y2,x2+keySize,y2+keySize);

input=_getch();

if(input=='G'||input=='g')

setlinecolor(WHITE);

else

while(1)

rectangle(x2,y2,x2+keySize,y2+keySize);

input=_getch();

if(input=='G'||input=='g')

setlinecolor(WHITE);

break;

x2=tx2;

break;

case16:

setlinecolor(GREEN);

x2=x2+5*(keySize+Struct);

rectangle(x2,y2,x2+keySize,y2+keySize);

input=_getch();

if(input=='H'||input=='h')

setlinecolor(WHITE);

else

while(1)

rectangle(x2,y2,x2+keySize,y2+keySize);

input=_getch();

if(input=='H'||input=='h')

setlinecolor(WHITE);

break;

x2=tx2;

break;

case17:

setlinecolor(GREEN);

x2=x2+6*(keySize+Struct);

rectangle(x2,y2,x2+keySize,y2+keySize);

input=_getch();

if(input=='J'||input=='j')

setlinecolor(WHITE);

else

while(1)

rectangle(x2,y2,x2+keySize,y2+keySize);

input=_getch();

if(input=='J'||input=='j')

setlinecolor(WHITE);

break;

x2=tx2;

break;

case18:

setlinecolor(GREEN);

x2=x2+7*(keySize+Struct);

rectangle(x2,y2,x2+keySize,y2+keySize);

input=_getch();

if(input=='K'||input=='k')

setlinecolor(WHITE);

else

while(1)

rectangle(x2,y2,x2+keySize,y2+keySize);

input=_getch();

if(input=='K'||input=='k')

setlinecolor(WHITE);

break;

x2=tx2;

break;

case19:

setlinecolor(GREEN);

x2=x2+8*(keySize+Struct);

rectangle(x2,y2,x2+keySize,y2+keySize);

input=_getch();

if(input=='L'||input=='l')

setlinecolor(WHITE);

else

while(1)

rectangle(x2,y2,x2+keySize,y2+keySize);

input=_getch();

if(input=='L'||input=='l')

setlinecolor(WHITE);

break;

x2=tx2;

break;

case20:

setlinecolor(GREEN);

rectangle(x3,y3,x3+keySize,y3+keySize);

input=_getch();

if(input=='Z'||input=='z')

setlinecolor(WHITE);

else

rectangle(x3,y3,x3+keySize,y3+keySize);

input=_getch();

if(input=='Z'||input=='z')

setlinecolor(WHITE);

break;

x3=tx3;

break;

case21:

setlinecolor(GREEN);

x3=x3+keySize+Struct;

rectangle(x3,y3,x3+keySize,y3+keySize);

input=_getch();

if(input=='X'||input=='x')

setlinecolor(WHITE);

else

while(1)

rectangle(x3,y3,x3+keySize,y3+keySize);

input=_getch();

if(input=='X'||input=='x')

setlinecolor(WHITE);

break;

x3=tx3;

break;

case22:

setlinecolor(GREEN);

x3=x3+2*(keySize+Struct);

rectangle(x3,y3,x3+keySize,y3+keySize);

input=_getch();

if(input=='C'||input=='c')

setlinecolor(WHITE);

else

while(1)

rectangle(x3,y3,x3+keySize,y3+keySize);

input=_getch();

if(input=='C'||input=='c')

setlinecolor(WHITE);

break;

x3=tx3;

break;

case23:

setlinecolor(GREEN);

x3=x3+3*(keySize+Struct);

rectangle(x3,y3,x3+keySize,y3+keySize);

input=_getch();

if(input=='V'||input=='v')

setlinecolor(WHITE);

else

while(1)

rectangle(x3,y3,x3+keySize,y3+keySize);

input=_getch();

if(input=='V'||input=='v')

setlinecolor(WHITE);

break;

x3=tx3;

break;

case24:

setlinecolor(GREEN);

x3=x3+4*(keySize+Struct);

rectangle(x3,y3,x3+keySize,y3+keySize);

input

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论