Я хочу вывести bitmap на кнопке
Использовал фрагменты кода из этого форума
void Cdialog_mesh_rot_2::OnPaint()
{ CBitmap b, bs; BITMAP b_Info; CDC dcMemS, dcMemD;
CPaintDC dc(this);
b.LoadBitmap(IDB_BITMAP1); b.GetBitmap(&b_Info);
CBitmap *b_old=dcMemS.SelectObject(&b);
CDC *dcButton = mc_button1.GetDC();
dcMemD.CreateCompatibleDC(dcButton);
bs.CreateCompatibleBitmap(dcButton, 40, 40);
CBitmap *bs_old=dcMemD.SelectObject(&bs);
//dcMemD.FillSolidRect(10, 10, 20, 20, RGB(200, 200, 200));
dcMemD.SetStretchBltMode(HALFTONE );
if(dcMemD.GetDeviceCaps(RASTERCAPS) != RC_STRETCHBLT ) MessageBox("not support");
dcMemD.StretchBlt(0, 0, 40, 40, &dcMemS, 0, 0, b_Info.bmWidth, b_Info.bmHeight, SRCCOPY);
dcMemS.SelectObject(b_old);
dcMemD.SelectObject(bs_old);
mc_button1.SetBitmap(bs);
mc_button2.SetBitmap(b);
UpdateWindow();
}
В результате получаю MessageBox("not support");
Я пробовал вместо dcButton другие типы с тем же результатом
Что я делаю неправильно
В результате выполнения я вижу черный квадрат
Картинка уменьшается
27.09.04 20:15: Перенесено из 'C/C++'