-
-
[原创]开源 C++配合大漠插件实现的消息泵模式按键模拟编程
-
发表于:
2015-4-14 00:51
14327
-
[原创]开源 C++配合大漠插件实现的消息泵模式按键模拟编程
开发背景:某天正在用OPENGL写一个UI界面库,发现实现过程越来越很有趣,一发不可收拾。
于是想着能不能在逻辑型代码上实现类似界面的那种思维。
花了2天写的,对新手或者老手 都是会有帮助的。
这个类库的特点:
逻辑全部封装,你只需要提供要执行的行为,已经行为达到某个触发条件执行特定的事物。执行Execu即可。免去了大量重复的逻辑判断,大量的重复的函数调用。
加载大漠插件避开了COM组件注册表机制,用的WIN32方式加载
示例代码:
[COLOR="DarkOrchid"]
DmFindPic PicBaiDu_Open;//点击召唤师资料
DmFindPic PicBaiDu_Yixia;//查找是否有装备设置图标 但不点击
PicBaiDu_Open.SetPicName(".\\1.bmp");
PicBaiDu_Yixia.SetPicName(".\\2.bmp");
{
PicBaiDu_Yixia.Enable_Click_whileFind(false);//找到图片不点击
PicBaiDu_Yixia.Enable_break_whileFind();//找到了就退出app1
DmABCDEFG_ACTION Yidong;
Yidong.SetWay(偏移,100,20);
PicBaiDu_Yixia.AddSubDo(&Yidong);
DmABCDEFG_ACTION Shuangji;
Shuangji.SetWay(双击,NULL);
PicBaiDu_Yixia.AddSubDo(&Shuangji);
DmABCDEFG_ACTION Shuru;
Shuru.SetWay(输入文字,"测试");
Shuru.Enable_break_whileFind();
PicBaiDu_Yixia.AddSubDo(&Shuru);
}
Mydm dm1;
dm1.MianzhuCe();
dm1.RegDM();
DmManger app1;
app1.AttachDm(&dm1);
app1.SetDoAndDo_Time(10);
app1.SetSleepFunc(BindSleep(Mysleep));
app1.AddDo(&PicBaiDu_Open);
app1.AddDo(&PicBaiDu_Yixia);
while (app1.Execu()==false)
{
OutputDebugStringA("false");
}
AfxMessageBox("over");
// TODO: 在此添加控件通知处理程序代码
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!