一、
制作思路
1、得到QQ连连看窗口指针,从而得到CDC;
2、对每幅图片取4个点进行编码;
3、实现连连看的算法;
4、模拟鼠标消去块;
界面如下:
二、部分代码
复制内容到剪贴板
代码:
//定义的数据
bool flagx=true;
int
point1x,point1y,point2x,point2y;//保存需要单击点的位置
struct
MYCOLOR
{
COLORREF c[4];
};
MYCOLOR tc[230];//颜色表230〉11*19
int
tcnum; //所有图片的种类
int map[19][11]; //存放每个图片的颜色索引
int r1,g1,b1,r2,b2,g2;
int pop1,pop2;
//对图形进行编码
void CZg1Dlg::OnButton3()
{
int
pnum=0;
//////////////////
int t[4]={15,11,15,21};//取的4个点的x相对位移
int
tt[4]={17,17,21,17};////取的4个点的y相对位移
////////////////////
int
result;
tc[0].c[0]=tc[0].c[1]=tc[0].c[2]=tc[0].c[3]=7753015;
tcnum=1;
MYCOLOR
tmp;
CPoint p(10,180);
CDC *pdc=myc->GetDC();
CString hh=" 编码结果:
\n";
CString h;
int myr,myg,myb,t_t,sh;
for(int
i=0;iGetPixel(p.x+t[k],p.y+tt[k]);
sh=0;
for(t_t=0;t_t45)&&(myg>50)&&(myg103) &&(myb 三、结束语
不足之处是点击2次鼠标才能消去1对。因为这个游戏必须鼠标真正点击1次才能作到实现鼠标模拟的另外一次单击