//父窗口中有个 CListCtrl控件m_lstChan,我在CListCtrl控件中动态生成一个 CComboBox控件,指定其父窗口为m_lstChan
//在父窗口中响应不了ccomboBox控件的消息,
//但是指定mybtn的父窗口为this时可以响应.
mybtn = new CComboBox();
mybtn->Create(WS_CHILD|WS_VISIBLE|WS_VSCROLL|CBS_DROPDOWN|CBS_DROPDOWN|CBS_AUTOHSCROLL,rect,
/*this*/(CWnd *)&m_lstChan,IDC_COMBO_TEMP);
不采用派生新类,还能有什么方法
解决方案 »
- 关于网络编程,如何设置可以实时读取数据?
- vc中编辑框的背景色
- 怎样用语言实现得到引导区的数据
- 请问“Server程序出现很多CLOST_WAIT,死在那里不动”
- 提问关于程序如何实现的问题:如何创建有插件功能的程序
- 转分!转分!转分!转分!转分!转分!转分!
- 用vc做字符识别!menu中的消息映射?在线等待!
- error C2065: 'IDD_PICTURE' : undeclared identifier
- 在对话框程序中,如何使用hot key 和tab controll控件?
- MFC ListBox 怎么响应双击来获取这一行的文本信息
- MFC 编程问题,滚动条滑块拖动后仍然回到最上端,
- 请问怎么把JPG格式图片转换为BMP格式
mybtn->Create(WS_CHILD|WS_VISIBLE|WS_VSCROLL|CBS_DROPDOWN|CBS_DROPDOWN|CBS_AUTOHSCROLL,rect,
this,IDC_COMBO_TEMP);
这样是能成功响应的
但是不是我想要的(mybtn成为了父窗口的直接子窗口)、
1、SetWindowLong/SetWindowLongPtr重设m_lstChan的窗口函数,在新的窗口函数中响应,其它消息调用原窗口函数。
2、SetWindowsHookEx,钩WH_CALLWNDPROC来响应。
而且,你的想法很新奇哦
父窗口添加消息映射 ONMESSAGE(WM_YOUR_OWN_DEFINED_MESSAGE,OnNotify)父窗口响应消息: 父窗口::OnNotify(wp,lp)
{
.........
}