假如你的图片控件ID是IDC_PICTURE1
同时用几个CBitmap载入了几个图片,那么只要加入如下代码变可以实现图片切换
假如个图片ID是IDB_BITMAP1
CBitmap bitmap;
bitmap.LoadBitmap(IDB_BITMAP1);
( (CStatic *)GetDlgItem(IDC_PICTURE1) )->SetBitmap(&bitmap);
等到下次切换的时候,只要将bitmap载入别的位图就是
bitmap.LoadBitmap(IDB_BITMAP2);
............
这样不行,不知道为什么书上也是这样说的我也是这样做的,可是我运行起来没反应.我的源代码是这样的
HBITMAP m_hBackGround;
CButton* m_Button;
CBitmap Bitmap[16];
m_Button=(CButton*)GetDlgItem(IDC_P);
Bitmap[0].LoadBitmap(IDB_BITMAP2);
Bitmap[1].LoadBitmap(IDB_BITMAP3);
Bitmap[2].LoadBitmap(IDB_BITMAP4);
Bitmap[3].LoadBitmap(IDB_BITMAP5);
Bitmap[4].LoadBitmap(IDB_BITMAP6);
Bitmap[5].LoadBitmap(IDB_BITMAP7);
Bitmap[6].LoadBitmap(IDB_BITMAP8);
Bitmap[7].LoadBitmap(IDB_BITMAP9);
Bitmap[8].LoadBitmap(IDB_BITMAP10);
Bitmap[9].LoadBitmap(IDB_BITMAP11);
Bitmap[10].LoadBitmap(IDB_BITMAP12);
Bitmap[11].LoadBitmap(IDB_BITMAP13);
Bitmap[12].LoadBitmap(IDB_BITMAP14);
Bitmap[13].LoadBitmap(IDB_BITMAP15);
Bitmap[14].LoadBitmap(IDB_BITMAP16);
Bitmap[15].LoadBitmap(IDB_BITMAP17);
Bitmap[16].LoadBitmap(IDB_BITMAP18);
m_hBackGround=::LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE
(IDB_BITMAP1));
m_Button->SetBitmap(m_hBackGround);
我这样先将一个图片加进去以后再加入更别的图片,可就是第一个图片也显示不出来.
只能到Pictrur中将其中的位图下面的菜单中选中这个图他就显示那个图,跟程序没什么关系感觉.这是怎么回事?
我的源代码是这样的
HBITMAP m_hBackGround;
CButton* m_Button;
CBitmap Bitmap[16];
m_Button=(CButton*)GetDlgItem(IDC_P);//IDC_P是我Pictrue控件的ID
Bitmap[0].LoadBitmap(IDB_BITMAP2);
Bitmap[1].LoadBitmap(IDB_BITMAP3);
Bitmap[2].LoadBitmap(IDB_BITMAP4);
Bitmap[3].LoadBitmap(IDB_BITMAP5);
Bitmap[4].LoadBitmap(IDB_BITMAP6);
Bitmap[5].LoadBitmap(IDB_BITMAP7);
Bitmap[6].LoadBitmap(IDB_BITMAP8);
Bitmap[7].LoadBitmap(IDB_BITMAP9);
Bitmap[8].LoadBitmap(IDB_BITMAP10);
Bitmap[9].LoadBitmap(IDB_BITMAP11);
Bitmap[10].LoadBitmap(IDB_BITMAP12);
Bitmap[11].LoadBitmap(IDB_BITMAP13);
Bitmap[12].LoadBitmap(IDB_BITMAP14);
Bitmap[13].LoadBitmap(IDB_BITMAP15);
Bitmap[14].LoadBitmap(IDB_BITMAP16);
Bitmap[15].LoadBitmap(IDB_BITMAP17);
Bitmap[16].LoadBitmap(IDB_BITMAP18);
m_hBackGround=::LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE
(IDB_BITMAP1));
m_Button->SetBitmap(m_hBackGround);
我这样先将一个图片加进去以后再加入更别的图片,可就是第一个图片也显示不出来.
只能到Pictrur中将其中的位图下面的菜单中选中这个图他就显示那个图,跟程序没什么关系感觉.这是怎么回事?