背景图标

发表于:2007-06-17来源:作者:点击数: 标签:
问:如何在背景中显示一个图标. 答:你可能已经发现改写OnEraseBkgn()(对应消息WM_ERASEBKGND)可以满 足你的要求.通过使用该方法可以实现由Cview继承类的自定义背 景显示.我通常是用它改变颜色,但我相信你也可以实现位图的显示.至于 改变背景颜色,只需设置一个

          问:如何在背景中显示一个图标.
答:你可能已经发现改写OnEraseBkgn()(对应消息WM_ERASEBKGND)可以满
足你的要求. 通过使用该方法可以实现由Cview继承类的自定义背

景显示.我通常是用它改变颜色, 但我相信你也可以实现位图的显示.至于
改变背景颜色,只需设置一个静态标志用下面 的代码就可以实现.
BOOL CMyView::OnEraseBkgnd(CDC* pDC)
  Crect  cClientRect;
  // Get client area.
  GetClientRect( cClientRect );
  if( m_bFlag )
  {
/ Set background to dark green.

DC->FillSolidRect( cClientRect, RGB( 0, 128, 0 ) );
  }
  else
  {
/ Set background to dark red.
DC->FillSolidRect( cClientRect, RGB( 128, 0, 0 ) );
  }
  // Prevent Windows from drawing over our background.
  Return( TRUE );
// return CScrollView::OnEraseBkgnd(pDC);
} /* end CMyView::OnEraseBkgnd */

原文转自:http://www.ltesting.net