int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
   if (!m_wndStatusBar.Create(this) ||
!m_wndStatusBar.SetIndicators(indicators,4))
{
TRACE0("Failed to create status bar\n");
return -1;      // fail to create
}
m_wndStatusBar.SetPaneInfo(0,ID_SEPARATOR,SBPS_STRETCH,100);
m_wndStatusBar.SetPaneInfo(1,ID_SEPARATOR,SBPS_NORMAL,140);
m_wndStatusBar.SetPaneInfo(2,ID_SEPARATOR,SBPS_NORMAL,140);
m_wndStatusBar.SetPaneInfo(3,ID_SEPARATOR,SBPS_NORMAL,80);
 
         CImageList m_ImageLevel; //装载Icon的代码省略.............. CDC* pDest = m_wndStatusBar.GetDC(); //得到状态条的句柄 
RECT m_LocRect;
m_wndStatusBar.GetItemRect(3, (LPRECT)&m_LocRect);//得到状态条的矩形位置 
         m_ImageLevel.Draw(pDest,5,CPoint(m_LocRect.left,m_LocRect.top),ILD_NORMAL);
         pDest->Detach();
}
程序没有报错,但图标就是显示不出来!!!!!!11

解决方案 »

  1.   

    原文章在: http://www.chinaaspx.com/club/topic_6_1729.htm
    他是在   
    void CMainFrame::OnUpdateTime(CCmdUI* pCmdUI) 
    {
    }
    中画,用定时器定时刷新,我不用刷新,应该是更简单呀!
      

  2.   

    CImageList m_ImageLevel;是成员变量吗?
      

  3.   

    对,CImageList m_ImageLevel;是成员变量。
    我试过在头文件MainFrm.h中定义,也试过在 OnCreate中定义,结果都出不来。
      

  4.   

    CImageList m_ImageLevel绝对没有问题,我已经用m_ImageLevel在其它地方地方绘出了图形。
      

  5.   

    不用求高手了,这里有代码:http://codeguru.earthweb.com/Cpp/controls/statusbar/print.php/c5927/