Prev: MFC/C++ report writing?
Next: OPC server & MFC
From: mfc on 28 Jun 2010 10:09 Hi, how is it possible to add a background image to a CIPAddressCtrl control generated by the resource editor? I`ve written my own subclass (CImageIpAddress), where I can change the textcolor as well as the text-background-color in the OnCtlColor handle. Moreover I integrated a OnPaint() method where the background-image should be created - but it failed... At the moment only the points between the edit control fields are gone.... CImageList m_ImageList; BITMAP m_bitmap; CRect m_rectBtn; BOOL m_bLoaded; void CImageIpAddress::OnPaint() { CDC *pDC = GetDC(); if(m_bLoaded) m_ImageList.DrawIndirect(pDC , CPoint( m_rectBtn.left,m_rectBtn.top ), CSize( m_bitmap.bmWidth , m_bitmap.bmHeight ), CPoint( 0 , 0 ) , ILD_NORMAL); ReleaseDC(pDC); } And here`s the function to load the image. void CImageIpAddress::SetIpAddrImg(UINT uiImage) { CBitmap bitmapImage; if( bitmapImage.LoadBitmap( uiImage ) ) { bitmapImage.GetObject( sizeof( m_bitmap ) , &m_bitmap ); m_rectBtn.top =0;m_rectBtn.left =0; m_rectBtn.right = m_bitmap.bmWidth; m_rectBtn.bottom =m_bitmap.bmHeight; if( m_ImageList.Create( m_bitmap.bmWidth , m_bitmap.bmHeight ,ILC_COLORDDB,1 ,2) ) { m_ImageList.Add( &bitmapImage ,&bitmapImage); bitmapImage.DeleteObject(); m_bLoaded = TRUE; } } } Maybe someone could give me some hints to integrate a background image to this control. On other controls this method is working. best regards Hans
|
Pages: 1 Prev: MFC/C++ report writing? Next: OPC server & MFC |