{
// device context for painting
CPaintDC dc( this );
CBitmap bitmap;
if (LED_SATUE=="断开")
bitmap.LoadBitmap(IDB_LEDOFF);/
else
bitmap.LoadBitmap(IDB_LEDON);/
HBITMAP OldBitmap;
CDC MemDC;
CRect rect;
CClientDC dc1( this );
MemDC.CreateCompatibleDC(&dc1);
GetClientRect(rect);
OldBitmap=(HBITMAP)MemDC.SelectObject(&bitmap);
dc1.BitBlt(148,32,rect.Width(),rect.Height(),&MemDC,0,0,SRCCOPY);
MemDC.SelectObject(OldBitmap);
// TODO: Add your message handler code here
// Do not call CDialog::OnPaint() for painting messages
}
为何切换不过来位图
用CPaintDC
这样 CPaintDC dc( this );
CBitmap bitmap;
if (LED_SATUE=="断开")
bitmap.LoadBitmap(IDB_LEDOFF);//装入红灯
else
bitmap.LoadBitmap(IDB_LEDON);//装入绿灯
HBITMAP OldBitmap;
CDC MemDC;
CRect rect;
// CClientDC dc1( this );
MemDC.CreateCompatibleDC(&dc);
GetClientRect(rect);
OldBitmap=(HBITMAP)MemDC.SelectObject(&bitmap);
dc.BitBlt(148,32,rect.Width(),rect.Height(),&MemDC,0,0,SRCCOPY);
MemDC.SelectObject(OldBitmap);
依然不能切换!在判断按钮中加入断点,调试时可以看到能够切换视图,什么原因?