C语言扫雷游戏鼠标问题!

zhideyongyou007 2009-10-17 02:25:03
http://hi.baidu.com/hemmingway/blog/item/ca905aca926b6583c817685d.html


这里面是个扫雷游戏的源代码 ! putimage getimage这几个代码有什么用呢? 哪位能帮里面的 鼠标代码 提取出来 弄


成一个简单界面可移动鼠标就可以!

http://hi.baidu.com/zhangyafei30207/blog/item/df1cc737c03ef1d4a3cc2bd6.html

这里面的扫雷 游戏 怎么没有鼠标 怎么把上面那个鼠标加到里面呢!

第一个里面提取鼠标的代码 先列出来一下 !

分开说下 ! 刚学C语言不久 希望大家帮帮忙!


...全文
375 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhideyongyou007 2009-10-21
  • 打赏
  • 举报
回复
谁帮 第一个连接里面的 鼠标部分的 代码 提取出来一下啊!
zhideyongyou007 2009-10-18
  • 打赏
  • 举报
回复
自己先 研究中!................
zhideyongyou007 2009-10-17
  • 打赏
  • 举报
回复
这个问题 很容易啊 怎么没人舍得看看啊 !⊙﹏⊙b (+﹏+)~
clc0925 2009-10-17
  • 打赏
  • 举报
回复
高手呢?
zhideyongyou007 2009-10-17
  • 打赏
  • 举报
回复

#include "graphics.h"
#include "dos.h"
#include "stdio.h"
union REGS regs;
void init();
int MSinit();
void setmouse();
void Ddraw2(int x,int y);
void MSread(int *xm,int *ym);
void main()
{
int x,y;
init();
cleardevice();
MSinit();
setbkcolor(LIGHTCYAN);
setwritemode(XOR_PUT);
x=320,y=260;
Ddraw2(x,y);
for(;;)
{
MSread(&x,&y);
}
getch();
closegraph();
}
void init()
{
int gdriver=DETECT,gmode;
initgraph(&gdriver,&gmode,"");
if(graphresult())
{printf("\ntiaoyongshibaile!\n");
exit(1);
}
}
int MSinit()
{
int retcode;
regs.x.ax=0;
int86(0x33,®s,®s);
retcode=regs.x.ax;
if(retcode==0)
{
printf("/nmeizhaodaoqudong!/n");
return 0;
}
else
return retcode;
}
void setmouse(int x,int y,int x1,int y1)
{
int left , right,top,buttom;
left=x;
right=y;
top=x1;
buttom=y1;
regs.x.ax=7;
regs.x.cx=left;
regs.x.dx=right;
int86(0x33,®s,®s);
regs.x.ax=8;
regs.x.cx=top;
regs.x.dx=buttom;
int86(0x33,®s,®s);
}
void Ddraw2(int x,int y)
{
/*这个地方暂时使用简易光标,程序成熟以后使用复杂的*/
setcolor(1);
line(x,y,x,y+18);
line(x+1,y,x+1,y+18);
line(x,y,x+12,y+12);
line(x+1,y,x+13,y+12);
line(x,y+18,x+4,y+14);
line(x,y+17,x+4,y+13);
line(x+4,y+14,x+6,y+20);
line(x+4,y+13,x+6,y+19);
line(x+6,y+20,x+10,y+18);
line(x+6,y+19,x+10,y+17);
line(x+10,y+18,x+8,y+12);
line(x+10,y+17,x+8,y+11);
line(x+8,y+12,x+12,y+12);
line(x+8,y+11,x+12,y+11);
}
void MSread(int *xm,int *ym)
{
int x0=*xm,y0=*ym;
int xnew,ynew;
do
{
regs.x.ax=3;
int86(0x33,®s,®s);
xnew=regs.x.cx;
ynew=regs.x.dx;
}
while(xnew==x0&&ynew==y0);
Ddraw2(x0,y0);
Ddraw2(xnew,ynew);
*xm=xnew;
*ym=ynew;

}

这段代码是一个鼠标界面


但对比后发现 这段代码里面的鼠标 没有 下面那个链接里面的鼠标 完全

都是一样画的鼠标 怎么移动的时候就不一样显示 为什么没下面那个显示的好看?

http://hi.baidu.com/hemmingway/blog/item/ca905aca926b6583c817685d.html

zhideyongyou007 2009-10-17
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 cbirdno1no1 的回复:]
getimage用于保存绘制的图形。程序中保存的是鼠标的图形区域。
putimage用于将getimage保存的图形重绘在指定区域。

[/Quote]

这个大概我也知道 但在程序中的起到什么作用说下啊 还有 哪位 把里面的鼠标代码 提取出来一下啊 !
cBirdNO1NO1 2009-10-17
  • 打赏
  • 举报
回复
getimage用于保存绘制的图形。程序中保存的是鼠标的图形区域。
putimage用于将getimage保存的图形重绘在指定区域。
  • 打赏
  • 举报
回复
帮顶
Z782282738 2009-10-17
  • 打赏
  • 举报
回复
只差6分C/C++3就有3个小三角了。
能给我6分吗?
kangqi7000 2009-10-17
  • 打赏
  • 举报
回复
我在看mfc中看到过一个函数就什么来着,MOSEMOVE类 还有个叫ButtouDown的类,应该有帮助的对你的程序,至于怎么用,我先声明,我没试验过。但是我这有例子,应该网上你能找到!
cllover 2009-10-17
  • 打赏
  • 举报
回复
你弄个windows程序试试
zhideyongyou007 2009-10-17
  • 打赏
  • 举报
回复
仍然没有人 在up一下!大家帮看一下啊!
wanjingwei 2009-10-17
  • 打赏
  • 举报
回复
等高手来帮你解决吧
zhideyongyou007 2009-10-17
  • 打赏
  • 举报
回复
这么久了 怎么还没人回答啊 帮帮忙啊!
zhideyongyou007 2009-10-17
  • 打赏
  • 举报
回复
占一楼 !

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧