当前位置: 首页 > news >正文

有没有好用的网站推荐c#网站开发模板

有没有好用的网站推荐,c#网站开发模板,从事网络营销的公司,网站开发刷新图片左键右键双击移动 同样在ServerSocket.h中需要一个函数捕捉鼠标事件 这里在ServerSocket.h 就需要一个结构体来接收鼠标事件,之前文件只用接收打开的文件路径,这里client需要传多个参数到sever端bool GetMouseEvent(MOUSEEV& mouse) {if (m_packet.s…

左键右键双击移动

同样在ServerSocket.h中需要一个函数捕捉鼠标事件

这里在ServerSocket.h 就需要一个结构体来接收鼠标事件,之前文件只用接收打开的文件路径,这里client需要传多个参数到sever端

	bool GetMouseEvent(MOUSEEV& mouse) {if (m_packet.sCmd == 5) {memcpy(&mouse, m_packet.strData.c_str(), sizeof(MOUSEEV));return true;}return false;}
typedef struct MouseEvent{MouseEvent() {nAction = 0;nButton = -1;ptXY.x = 0;ptXY.y = 0;}WORD nAction;// 点击、移动、双击WORD nButton;// 左键、右键、中键POINT ptXY;// 坐标
}MOUSEEV,*PMOUSEEV;

然后就是server端响应这个事件

int MouseEvent() {MOUSEEV mouse;if (CServerSocket::getInstance()->GetMouseEvent(mouse)) {DWORD nFlags = 0;switch (mouse.nButton) {case 0: //左键nFlags = 1;break; case 1: //右键nFlags = 2;break;case 2: //中键nFlags = 4;break; case 4: //无按键按下,单纯的鼠标移动nFlags = 8;break;}if (nFlags != 8) SetCursorPos(mouse.ptXY.x, mouse.ptXY.y);switch (mouse.nAction){case 0: //单击nFlags |= 0x10;break;case 1: //双击nFlags |= 0x20;break;case 2: //按下,可能要拖动一些东西nFlags |= 0x40;break;case 3: //放开nFlags |= 0x80;break;default:break;}switch (nFlags) {case 0x21: //左键双击mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, GetMessageExtraInfo()); //获取当前线程的额外信息,有没有额外按下按键mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, GetMessageExtraInfo()); //case 0x11: //左键单击mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, GetMessageExtraInfo()); //获取当前线程的额外信息,有没有额外按下按键mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, GetMessageExtraInfo()); //break;case 0x41: //左键按下mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, GetMessageExtraInfo()); //获取当前线程的额外信息,有没有额外按下按键break;case 0x81: //左键放开mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, GetMessageExtraInfo()); //break;case 0x22: //右键双击mouse_event(MOUSEEVENTF_RIGHTDOWN, 0, 0, 0, GetMessageExtraInfo()); //获取当前线程的额外信息,有没有额外按下按键mouse_event(MOUSEEVENTF_RIGHTUP, 0, 0, 0, GetMessageExtraInfo()); //case 0x12: //右键单击mouse_event(MOUSEEVENTF_RIGHTDOWN, 0, 0, 0, GetMessageExtraInfo()); //获取当前线程的额外信息,有没有额外按下按键mouse_event(MOUSEEVENTF_RIGHTUP, 0, 0, 0, GetMessageExtraInfo()); //break;case 0x42: //右键按下mouse_event(MOUSEEVENTF_RIGHTDOWN, 0, 0, 0, GetMessageExtraInfo()); //获取当前线程的额外信息,有没有额外按下按键break;case 0x82: //右键放开mouse_event(MOUSEEVENTF_RIGHTUP, 0, 0, 0, GetMessageExtraInfo()); //break;case 0x24: //中键双击mouse_event(MOUSEEVENTF_MIDDLEDOWN, 0, 0, 0, GetMessageExtraInfo()); //获取当前线程的额外信息,有没有额外按下按键mouse_event(MOUSEEVENTF_MIDDLEUP, 0, 0, 0, GetMessageExtraInfo()); //case 0x14: //中键单击mouse_event(MOUSEEVENTF_MIDDLEDOWN, 0, 0, 0, GetMessageExtraInfo()); //获取当前线程的额外信息,有没有额外按下按键mouse_event(MOUSEEVENTF_MIDDLEUP, 0, 0, 0, GetMessageExtraInfo()); //break;case 0x44: //中键按下mouse_event(MOUSEEVENTF_MIDDLEDOWN, 0, 0, 0, GetMessageExtraInfo()); //获取当前线程的额外信息,有没有额外按下按键break;case 0x84: //中键放开mouse_event(MOUSEEVENTF_MIDDLEUP, 0, 0, 0, GetMessageExtraInfo()); //break;case 0x08: //单纯鼠标移动mouse_event(MOUSEEVENTF_MOVE, mouse.ptXY.x,mouse.ptXY.y,0, GetMessageExtraInfo());break;}CPacket pack(4, NULL, 0); //表明收到这个消息了,并且执行完成了CServerSocket::getInstance()->Send(pack);}else {OutputDebugString(_T("获取鼠标操作参数失败"));return -1;}return 0;
}

这里的处理方式是定义一个8位flag,将flag前4位区分哪个键按下,后四位当单双击行为`

GetMessageExtraInfo() 当鼠标事件发生时候,可能出现其他事件,比如按下了ctrl按键

http://www.dtcms.com/a/575337.html

相关文章:

  • 建设网站虚拟主机淘宝网首页电脑登陆入口
  • 网站logo怎么做的中山网站建设模板网络公司
  • 常用的网站建设程序有哪些html在网站开发中的应用
  • 【Android】正式打包 Release 发布版本(创建秘钥,配置秘钥、打包签名)
  • 专业建站网网站运营推广24小时学会网站建设 百度云
  • 怎么查网站备案域名备案网店代运营收费多少钱
  • 基于树结构突破大模型自身能力
  • 蒙阴网站建设中山有哪些网站建立公司
  • Linux 内核——字符设备驱动框架详解
  • 毕业设计做网站还是系统湛江市手机网站建设企业
  • 做网站是否要备案网站建站网站
  • 莱芜做网站站酷网站
  • 上海加盟网网站建设如何做内网站的宣传栏
  • 如何设计公司标志图案江苏企业网站排名优化
  • 想要做一个网站关于政务网站建设工作情况的总结
  • 上海建网站工作室flash网站引导页面制作
  • 【Janet】语法与解析器
  • 异构比较查找
  • 网站价位无法访问服务器上网站
  • 服装购物网站排名icp备案证书
  • 网站对公司的作用是什么意思免费外贸网站制作
  • 一级a做爰片免费网站体验nginx进wordpress不能进目录
  • 湛江市建设局网站成功的软文营销案例
  • 对于网站开发有什么要求冉冉科技网站建设
  • 汝州网站建设网站建设方案数
  • 跨境电商平台网站建设制作h5用什么软件比较好
  • 网站构建设计思路设计参考网站推荐
  • 两台电脑一台做服务器 网站电商付费推广方式
  • 编写网站 支付宝做爰的最好看的视频的网站
  • 金华企业网站建设富阳seo关键词优化