【问题标题】:c++ MFC and handling windows Messagesc++ MFC和处理windows消息
【发布时间】:2014-08-20 23:24:26
【问题描述】:

Windows 消息的消息映射中需要什么代码?

调用函数的代码:

SendMessage(GRID_WM_UPDATECELL,(WPARAM)1,(LPARAM)&sDisp);

功能:

LRESULT CNJAGridCtrl::OnUpdateCell(WPARAM wParam, LPARAM lParam)
{
}

【问题讨论】:

  • OnUpdateCell 的声明是什么样子的?消息映射条目如何?
  • 不是演员阵容造成的。当函数声明与函数实现不匹配时,您会得到此诊断信息。您根本没有给我们任何暗示可能是什么功能。调试器告诉你。
  • @WernerHenze 我添加了声明 afx_msg LRESULT OnUpdateCell(WPARAM wParam, LPARAM, lParam);但我也有 LRESULT OnUpdateCell(WPARAM wParam, LPARAM lParam);和虚拟 void UpdateCell(BOOL bAdd, NJACELLINFO sDisp);在头文件中。这是正确的吗?
  • 使用调用堆栈调试器窗口。是在它停止的语句之前的函数调用被破坏了。可以埋在宏里面,MFC太喜欢了。

标签: c++ mfc windows-messages message-map


【解决方案1】:

消息映射行应该是

ON_MESSAGE(GRID_WM_UPDATECELL, OnUpdateCell) 

函数签名应该是

LRESULT CNJAGridCtrl::OnUpdateCell(WPARAM wParam, LPARAM lParam);

【讨论】:

  • 你在说什么?这里没有虚函数。
  • 代码使用虚函数而不是使用 afx_msg,我想知道这是否可能是问题的一部分。也可能类似于link
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-22
  • 1970-01-01
  • 2010-12-10
  • 2012-12-07
  • 1970-01-01
  • 2011-10-24
相关资源
最近更新 更多