有一个dll做成了控件,在此dll中有个消息函数如下
void CmyControl::OnLButtonDown(uint flag,cpoint point)
{
GetParent()->SendMessage(WM_COMMAND,GetDlgCtrlID(),(LONG)GetSafeHwnd());
int i=GetDlgCtrlID();
}
此控件是放在一个对话框中的ID=IDC_ABC(=1000),都编译好后单步跟踪程序,在执行sendmessage那行察看getDlgctrlID的返回值可以得到正确的控件ID(=1000),
在执行下一行后int i得到的值却不正确,竟然是16进制的cccccc,也就是说这行的
GETdlgCtrlID()根本没有起作用,这是为什么?难道GetDlgCtrlID()不能单独使用吗?
void CmyControl::OnLButtonDown(uint flag,cpoint point)
{
GetParent()->SendMessage(WM_COMMAND,GetDlgCtrlID(),(LONG)GetSafeHwnd());
int i=GetDlgCtrlID();
}
此控件是放在一个对话框中的ID=IDC_ABC(=1000),都编译好后单步跟踪程序,在执行sendmessage那行察看getDlgctrlID的返回值可以得到正确的控件ID(=1000),
在执行下一行后int i得到的值却不正确,竟然是16进制的cccccc,也就是说这行的
GETdlgCtrlID()根本没有起作用,这是为什么?难道GetDlgCtrlID()不能单独使用吗?
解决方案 »
- MFC是开源的吗?
- CString 类型的2进制数字转化为CString类型的10进制数字
- 急!新手求助:在MFC中,如何使用struct?
- 如何使用VC多cell拷贝,如何修改单个cell中内容的字体,如何合并excel中的几个单元格
- 各位老大帮忙!(非常急的)
- 在程序中如何中止当前的屏保程序?
- 怎么改变TC3。0的内存模式为巨模式?
- 3D桌球游戏,不会让你失望.(只有760K)
- vs2010, c++, MFC, 基于对话框的程序,有什么方便的皮肤方案吗?
- 一个SDI程序的问题
- 如何实现对编辑框输入数值进行校验?(只允许输入数值,其它的字符不行)
- 如何设置Group Box 中Caption中文字的底色和字体颜色?
i think CmyControl--this->GetDlgCtrlID();is invalid