我从网上下载了个CMyButton类,里面有Buttondown和Buttonup两个函数,我在里面编写了MessageBox函数,现在在对话框有两个按钮,我把这两个按钮都定义为CMyButton类对象,结果是不管按下哪个按钮都显示MessageBox对话框,请问我如何按不同的按钮分别显示不同的Buttondown和Buttonup?
解决方案 »
- OCX定义参数,用什么类型可以在JS调用的时候看到?
- 这个错是怎么回事啊?如何修改?
- 分裂窗口中鼠标滚轮问题
- 请教MSFlexGrid 的问题
- 求助,以后想做CG方面的研究,从哪里开始?
- 如何解压被拆分成几个文件的RAR文件?
- 小弟初学,请大家关照
- 暴简单的问题——为什么我在网上下载的vc程序不能在我的vc6.0中打开
- 那位能解释一下ASM是什么意思呢,ASM开发怎样进行呢?
- 求vc源码,关于媒体播放器的,要能够播放各种格式的声音、视频文件(最好用mcisendcommand做)。我的e-mail:[email protected]. 100分相赠
- 【高手帮忙】头文件多次编译与声明和定义的矛盾
- 求做视频加密系统的源代码
================
这两个按钮的ID是不一样的,用int GetDlgCtrlID(HWND hwndCtl);得到ID,通过ID进行判断
{
b_Flag = true;
if (GetFocus()!=this)
{
this->SetFocus();
}
CButton::OnLButtonUp( nFlags, point );
Invalidate(); //重绘按钮
}这是OnLButtonUp函数,GetDlgCtrlID(HWND hwndCtl)写在哪个地方啊?能给写一下吗?
(1) CMyButton类中的处理:void CMyButton::OnLButtonDown(UINT nFlags, CPoint point)
{
CWnd *pwnd = GetParent();
if (pwnd)
pwnd->SendMessage(WM_MYBUTTON_DOWN,(WPARAM)this->m_hWnd,0);
CButton::OnLButtonDown(nFlags, point);
}(2) 在父窗口即对话框窗口中的WM_MYBUTTON_DOWN消息相应函数中根据传过来的窗口句柄来判断是哪个按钮被按下:LRESULT CXXXXXXDlg::OnMyButtonDown(WPARAM iParam1,LPARAM iParam2)
{
HWND hwnd =(HWND)iParam1;
if (hwnd==m_btn1.m_hWnd)//m_bmpbtFocusPlus
{
......//Button1的处理
}
else if (hwnd==m_btn2.m_hWnd)
{
......//Button2的处理
} return 0;
}