下面的信息来自http://support.microsoft.com/kb/237998

对话框上旋转鼠标滚轮时, 不会处理程序中 WM_MOUSEWHEEL 中的邮件对话框类不调用运行 Windows 95 的计算机上。

在 MFC 中的 CDialog 类没有注册 MSH_MOUSEWHEEL 邮件需要才能接收 WM_MOUSEWHEEL 运行 Windows 95 的计算机上的邮件。

按照下面介绍的步骤可以解决此问题:

注册 MSH_MOUSEWHEEL 邮件。 将下面的行复制到您 dialog.cpp 文件:

AFX_STATIC UINT _afxMsgMouseWheel =

(((::GetVersion() & 0x80000000) && LOBYTE(LOWORD(::GetVersion()) == 4)) ||

(!(::GetVersion() & 0x80000000) && LOBYTE(LOWORD(::GetVersion()) == 3)))

? ::RegisterWindowMessage(MSH_MOUSEWHEEL) : 0;

将该行添加到对话框类的消息映射中, AFX_MSG_MAP 节之后:

ON_REGISTERED_MESSAGE(_afxMsgMouseWheel, OnRegisteredMouseWheel)

添加名为 OnRegisteredMouseWheel 传递一个 WPARAM 和 LPARAM,并返回到对话框类的 LRESULT 一个成员函数。 在函数定义 (代码取自 Winfrm.cpp) 中添加以下代码:

LRESULT CMyDialog::OnRegisteredMouseWheel(WPARAM wParam, LPARAM lParam)

{

// Convert from MSH_MOUSEWHEEL to WM_MOUSEWHEEL.

WORD keyState = 0;

keyState |= (::GetKeyState(VK_CONTROL) < 0) ? MK_CONTROL : 0;

keyState |= (::GetKeyState(VK_SHIFT) < 0) ? MK_SHIFT : 0;

LRESULT lResult;

HWND hwFocus = ::GetFocus();

const HWND hwDesktop = ::GetDesktopWindow();

if (hwFocus == NULL)

lResult = SendMessage(WM_MOUSEWHEEL, (wParam << 16) | keyState, lParam);

else

{

do {

lResult = ::SendMessage(hwFocus, WM_MOUSEWHEEL,

(wParam << 16) | keyState, lParam);

hwFocus = ::GetParent(hwFocus);

}

while (lResult == 0 && hwFocus != NULL && hwFocus != hwDesktop);

}

return lResult;

}

现在应用程序的对话框类应能够收到 WM_MOUSEWHEEL 信息。

mousewheel 取消_对话框不接收WM_MOUSEWHEEL消息,咋办?相关推荐

  1. mousewheel 取消_浅谈Mousewheel 事件的用法

    当需要制作转动鼠标滚轮放大页面字体这样的交互效果时,会用到Mousewheel事件.其实在大多数浏览器(IE6, IE7, IE8, Opera 10+, Safari 5+)中,都提供了 " ...

  2. mousewheel 取消_如何暂时取消绑定jquery.mousewheel

    我正在制作一个基于同位素的页面.主显示屏水平滚动,我使用 jquery.mousehweel script进行默认的鼠标滚轮操作.我想在打开文章时将默认操作返回给用户,并阻止它水平滚动,但我无法弄清楚 ...

  3. 公众号 接收规则 消息_微信公众平台 发送模板消息(Java接口开发)

    前言:最近一直再弄微信扫码推送图文消息和模板消息发送,感觉学习到了不少东西.今天先总结一下微信公众平台模板消息的发送.因为这个自己弄了很久,开始很多地方不明白,所以今天好好总结一下. 微信公众平台技术 ...

  4. 公众号 接收规则 消息_微信公众号教程(11)公众账号接收非文字消息 上

    公众账号接收非文字消息 在微信公众平台上用户都是用使用文字在进行交互的,但是有时候使用图片.语音.视频以及地理位置等可以实现一些非常棒的功能,比如"语音提醒"公众号里的发送语音就可 ...

  5. python接收微信消息_【Python写微信防撤回脚本】02 接收记录聊天信息

    上一期我们安装好了ItChat,并且学会用它登录微信.想知道它还能做什么?往下滑吧~ 接收好友信息 利用ItChat登录微信之后,我们就可以自动记录好友发来的信息. 话不多说,直接上代码: impor ...

  6. Java开发微信公众号(四)---微信服务器post消息体的接收及消息的处理

    在前几节文章中我们讲述了微信公众号环境的搭建.如何接入微信公众平台.以及微信服务器请求消息,响应消息,事件消息以及工具处理类的封装:接下来我们重点说一下-微信服务器post消息体的接收及消息的处理,这 ...

  7. 微信公众号-关注取消关注后图文和普通消息自动回复

    当用户发送消息给公众号时(或某些特定的用户操作引发的事件推送时),会产生一个POST请求,开发者可以在响应包(Get)中返回特定XML结构,来对该消息进行响应(现支持回复文本.图片.图文.语音.视频. ...

  8. java springboot微信公众号接收回复消息和超过5秒被动回复消息

    本次就是记录一下我的开发过程,不是教程,纯属自己做个笔记. 现在项目有个需求,需要用户在公众号发送图片消息的时候,我后台程序能接收到这个图片,并用ai处理图片并返回信息. 1.首先第一步要接收微信消息 ...

  9. 锁屏界面提示某些设置已隐藏_华为手机微信来消息不提示,从设置入手解决

    每次看到手机微信来消息提示,都会不自觉看看手机,就怕遗漏了重要消息.但是日常使用中,时不时会遇到微信来消息不提示/消息延迟的问题,这是怎么回事呢?排除网路原因,一般来说是微信设置或者系统设置问题,可以 ...

最新文章

  1. dfasdfasdfas
  2. 图解最常用的10个机器学习算法!
  3. php获取会员数据代码,php将会员数据导入到ucenter的代码
  4. 认知与设计:理解UI设计准则——序
  5. 如何成为一名优秀的创业公司CTO?
  6. go异常处理:自定义异常代码示例
  7. React Native之react-native bundle --platform android --dev false --entry-file index.js --bundle失败
  8. ASP.NET使用管道模型(PipleLines)处理HTTP请求
  9. php 增加mysql 索引,【PHP】为什么 MySQL 添加索引后就可以提高查询速度
  10. (6)售货机verilog与Systemverilog编码
  11. verilog coding style_韩嫕:坚持coding
  12. rds本地库到rds恢复_阿里云rds 备份和还原
  13. python中文视频教程-中谷教育python中文视频教程(全38集)
  14. UE4之vs2019IntelliSense错误
  15. 怎么实现微信多公众号管理?
  16. The JSP specification requires that an attribute name is preceded by whitesp
  17. 开机 服务 自动 bat regedi_android实现通话自动录音服务_Android
  18. unity 模拟引力
  19. leetcode java 大厂基础面试题附答案(四)
  20. 5.海康威视-Spring boot下实现抓图并保存

热门文章

  1. 一文介绍常见的动态内存错误
  2. HTML-Emmet语法篇
  3. 盘点一个Pandas数据处理基础题目(文末有学习彩蛋)
  4. PTA 数据结构与算法题目集(中文)7-45 航空公司VIP客户查询(25 分)map
  5. 游戏:《最终幻想:起源》发布终极预告,你期待吗?
  6. 第十二周任务一(多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部))
  7. 分布式缓存:爱我你怕了吗?
  8. TIDE|一个通用的目标检测失效分析工具
  9. Nexus私有仓库错误代码500
  10. (1)搭建工程开发环境