鼠标移到按钮上加载位图问题
定义一个按钮变量 手工修改为CBitmapButton m_button,然后用m_button.LoadBitmaps(IDB_BITMAP1,2,3,4);可以实现4种状态,现在想鼠标移动到按钮上时,换一个图片该怎么弄,找了很多都没弄好-0-,求教。最好给我看看源代码
[解决办法]
CBitmapButton* pmyButton = new CBitmapButton();// Create the bitmap button (must include the BS_OWNERDRAW style).pmyButton->Create(NULL, WS_CHILD|WS_VISIBLE|BS_OWNERDRAW, CRect(10,10,100,100), pParentWnd, 1);// Load the bitmaps for this button.pmyButton->LoadBitmaps(IDB_UP, IDB_DOWN, IDB_FOCUS, IDB_DISABLE);
[解决办法]
鼠标移到按钮上,换个图(假设这个图是要画在控件pWnd上)。
1.获取按钮的WM_MOUSEMOVE消息,刷新pWnd的背景颜色(pWnd->Invalidate())。
2.处理pWnd的WM_PAINT消息,实现画背景图。
可参考:http://blog.csdn.net/joeblackzqq/article/details/7267873
[解决办法]
响应 WM_SETCURSOR 消息
BOOL CDlg::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message)
{
int nID = pWnd->GetDlgCtrlID();
if(nID==IDC_BUTTON1);
m_button.LoadBitmaps(IDB_BITMAP1,2,3,4)
return TRUE;
}