²é¿´: 108  |  »Ø¸´: 0
µ±Ç°Ö÷ÌâÒѾ­´æµµ¡£

zsglly

ľ³æ (ÖøÃûдÊÖ)

[½»Á÷] ¡¾·¢ÏÂ06Äê±¾°æµÚÒ»Ìù¡¿ÔÚ״̬À¸´´½¨ºÏÊʵÄÁбí¿ò

ÔÚ״̬À¸´´½¨ºÏÊʵÄÁбí¿ò


Õâ¶Î´úÂë¿ÉÒÔÔÚ״̬ÐÐÖеÄÈÎÒâµØ·½½¨Á¢Ò»¸öÁбí¿ò

1.´ÓView²Ëµ¥ÖÐÑ¡ÔñResource Symbols,¼ÓÈëÒ»¸öеÄID(ÔÚ±¾ÀýÖмÙÉèΪ  
IDC_LIST),ÈüÆËã»úΪ¸ÃID¸³ÖµÒ²ÐíÊǽϺõÄÑ¡Ôñ.  

2. ÔÚMainFrm.cppÖÐѰÕÒindicatorsÊý×é,È»ºóÔÚ¸ÃÊý×éÖмÓÈëÉÏÃæÐÂÔö¼ÓµÄID,  
Ç뽫Ëü·ÅÔÚÆäËüIDµÄºóÃæ,Õ⽫ʹÒÔºóµÄÁбí¿ò³öÏÖÔÚ״̬ÐеÄ×îÓÒ±ß,Èç¹ûÄã  
²»Ïë ÈÃÁбí¿ò³öÏÖÔÚ×îÓÒ±ß,ÄãÒ²¿ÉÒÔ½«ID·ÅÖÃÔÚÆäËüÄãÏë³öÏֵĵط½
.ÔÚ±¾Àý×ÓÖÐÈçÏ£º
static UINT indicators[] =
{
ID_SEPARATOR,  // status line indicator
IDC_LIST      file://×Ô¼º¶¨ÒåµÄÄǶÎÇøÓò£¬±¾Àý×ÓÖÐÓÃÓÚ´æ·ÅListCtrl¿Ø¼þ
};  

3. ´ò¿ª×ÊÔ´ÎļþÖеÄ×Ö·û´®±í,È»ºó²åÈëÒ»¸öÐÂ×Ö·û´®.Äã¿ÉÒÔͨ¹ýInsert²Ëµ¥  
À´¼ÓÈëÒ»¸öÐÂ×Ö·û±í,»òÕßÔÚ×Ö·û´®±íÉϵ¥»÷ÓÒ¼üÒ²¿ÉÒÔÍê³É¸Ã¹¤×÷.
±¾Àý×ÓÖÐΪ¿Õ×Ö·û¡£  

4. ¸Ã×Ö·û´®µÄ×Ö·ûΪÐÂÔöµÄID,ºóÃæµÄÏûÏ¢,Çë¼ÓÈëÊʵ±µÄ¿Õ¸ñ.(¼ÓÈëµÄ¿Õ¸ñ  
ÖÁÉÙÒª±È½¨Á¢µÄÁбí¿òÒª´ó)  

ÏÖÔÚÎÒÃÇÒѾ­½¨Á¢ÁËÒ»¸ö¿ÕµÄ³¤·½ÐÎ,½ÓÏÂÀ´ÎÒÃÇÒªÔÚÕâÀïÃæ·ÅÈëÒ»¸öÁбí¿ò.  

1. ÔÚMainFrm.hÖÐÉùÃ÷Ò»¸ö¹«¹²±äÁ¿CListCtrl   m_list;
  

2. ÔÚMainFrm.hÖÐÉùÃ÷Ò»¸ö±£»¤±äÁ¿ BOOL   m_bListCreate£»
ÔÚ

3. ÔÚMainFrm.cppÖÐÖÃ
CMainFrame::CMainFrame()
{
    m_bListCreate=FALSE;
}

4.ÔÚMainFrm.hÉùÃ÷  void SetList(void); º¯Êý£¬¸Ãº¯ÊýÓÃÓÚ³õʼ»¯Áбí¿ò
  ÔÚMainFrm.cppÖÐʵÏÖSetList£¨£©º¯Êý£¬¾ßÌåÈçÏ£º
  void CMainFrame::SetList(void)
{
     file://create the listview
RECT MyRect;  
    // substitute 4 with the zero-based index of your status bar pane.  
    // For example, if you put your pane first in the indicators array,  
    // you? put 0, second you? put 1, etc.  
      m_wndStatusBar.GetItemRect(1, &MyRect);  

if(m_bListCreate==FALSE)
{
  LV_COLUMN lvc;
  lvc.mask = LVCF_TEXT | LVCF_SUBITEM | LVCF_WIDTH |LVCF_FMT;
     lvc.fmt=LVCFMT_CENTER;
  AfxMessageBox("ok";
  m_list.Create(WS_CHILD|WS_VISIBLE|LVS_ALIGNLEFT|LVS_REPORT|WS_BORDER ,MyRect, &m_wndStatusBar, 1);
  m_list.SetBkColor(::GetSysColor(COLOR_INFOBK));
        m_list.SetTextBkColor(::GetSysColor(COLOR_3DFACE));

  lvc.iSubItem = 0;
     lvc.pszText = _T("Am µãµ½";
     lvc.cx = 60;
     if(m_list.InsertColumn(1,&lvc)==0)
   AfxMessageBox("false";
     lvc.iSubItem = 1;
     lvc.pszText = _T("Îç·¹";
     lvc.cx = 60;
     m_list.InsertColumn(2,&lvc);

        file://AfxMessageBox("ok";
  m_bListCreate=TRUE;
}
else
  AfxMessageBox("has been created!";

}
Õâ¸öº¯Êý¿ÉÒÔ¸ù¾Ý×Ô¼ºµÄÐèÒªÀ´ÊµÏÖ¡£

5. ÔÚ±¾Àý×ÓÀïÁбí¿òÔÚ³ÌÐò³õʼ»¯µÄͬʱҲ±»³õʼ»¯£¬ËùÒÔ½«Áбí¿òµÄ³õʼ´úÂë
·ÅÔÚÖ÷¿ò¼Ü³õʼÉú³ÉµÄOnCreate()º¯ÊýÖС£¾ßÌåÈçÏ£º
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{  
if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
  return -1;
  
if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
  | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
  !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
  TRACE0("Failed to create toolbar\n";
  return -1;      // fail to create
}

if (!m_wndStatusBar.CreateEx(this,SBARS_SIZEGRIP) ||
  !m_wndStatusBar.SetIndicators(indicators,
    sizeof(indicators)/sizeof(UINT)))
{
  TRACE0("Failed to create status bar\n";
  return -1;      // fail to create
}

m_wndStatusBar.GetStatusBarCtrl().SetMinHeight(40);//¸ÃÓï¾äÓÃÓÚÉèÖÃ״̬À¸µÄ¸ß¶È¡£
SetList();//ÓÃÓÚÁбí¿òµÄ³õʼ»¯£¬½«Áбí¿ò·ÅÖÃÔÚ״̬À¸µÄºÏÊÊλÖá£
     
  
// TODO: Delete these three lines if you don't want the toolbar to
//  be dockable
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndToolBar);

return 0;
}

6¡£Èç¹û´°¿ÚÔÚ½¨Á¢Áбí¿òÖ®ºó,¸Ä±äÁË´óС,ÄÇôÁбí¿ò²¢²»»á±»ÖØÐµ÷ÕûλÖÃ,Ëù  
ÒÔ ÎÒÃDZØÐëÔÚWM_SIZEʼþÖмÓÈë×Ô¼ºµÄ´úÂëÀ´µ÷Õû¸ÃÁбí¿òµÄλÖÃ:  

void CMainFrame::OnSize(UINT nType, int cx, int cy)  
{
CFrameWnd::OnSize(nType, cx, cy);
  
if(m_bListCreate==TRUE)
{
      RECT rc;  
      m_wndStatusBar.GetItemRect(1, &rc);  

      // Reposition the progress control correctly!  
      m_list.SetWindowPos(&wndTop, rc.left, rc.top, rc.right - rc.left,rc.bottom - rc.top, 0);   
}
}

[ Last edited by »ÃÓ°ÎÞºÛ on 2006-11-27 at 08:16 ]
»Ø¸´´ËÂ¥

» ²ÂÄãϲ»¶

×öÈËÒªºñµÀ°¡£¡ºñµÀ°¡£¡
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ zsglly µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] Çóµ÷¼Á +5 ÁÖ֮Ϧ 2026-03-24 5/250 2026-03-24 17:16 by dick_runner
[²ÄÁϹ¤³Ì] Ò»Ö¾Ô¸C9²ÄÁÏÓ뻯¹¤×¨Òµ×Ü·Ö300Çóµ÷¼Á +4 Âü111 2026-03-24 5/250 2026-03-24 15:44 by ÐÇ¿ÕÐÇÔÂ
[¿¼ÑÐ] 07»¯Ñ§280·ÖÇóµ÷¼Á +4 722865 2026-03-23 4/200 2026-03-24 00:01 by chixmc
[¿¼ÑÐ] 0703»¯Ñ§Çóµ÷¼Á +4 ÄÌÓͲÝÝ®. 2026-03-22 5/250 2026-03-23 19:37 by pswait
[¿¼ÑÐ] ¹¤¿Æ0856Çóµ÷¼Á +5 ãåÎö͡͡ 2026-03-21 5/250 2026-03-23 17:56 by º£ÉªÞ±-
[¿¼ÑÐ] 291 Çóµ÷¼Á +4 »¯¹¤2026½ì±ÏÒµÉ 2026-03-21 5/250 2026-03-23 16:46 by »¯¹¤2026½ì±ÏÒµÉ
[¿¼ÑÐ] 333Çóµ÷¼Á +6 87639 2026-03-21 10/500 2026-03-23 10:41 by Iveryant
[¿¼ÑÐ] ²ÄÁÏÓ뻯¹¤085600£¬×Ü·Ö304£¬±¾¿ÆÓÐÁ½Æªsci²ÎÓ룬Çóµ÷¼Á +4 ÐÒÔ˵Ľ´½´ 2026-03-22 5/250 2026-03-22 20:15 by edmund7
[¿¼ÑÐ] 289²ÄÁÏÓ뻯¹¤£¨085600£©BÇøÇóµ÷¼Á +3 ÕâôÃû×ÖÕ¦Ñù 2026-03-22 4/200 2026-03-22 17:56 by ÔÆÃñ´óÀîÀÏʦ
[¿¼ÑÐ] Ò»Ö¾Ô¸»ªÖÐũҵ071010£¬×Ü·Ö320Çóµ÷¼Á +5 À§À§À§À§À¤À¤ 2026-03-20 6/300 2026-03-22 17:41 by hxsm
[¿¼ÑÐ] ²ÄÁÏѧ˶333Çóµ÷¼Á +3 ±±µÀÏï 2026-03-18 3/150 2026-03-21 18:17 by ѧԱ8dgXkO
[¿¼ÑÐ] 085601µ÷¼Á 358·Ö +3 zzzzggh 2026-03-20 4/200 2026-03-21 10:21 by luoyongfeng
[¿¼ÑÐ] Çóµ÷¼Á +6 Mqqqqqq 2026-03-19 6/300 2026-03-21 08:04 by JourneyLucky
[¿¼ÑÐ] Çóµ÷¼Á +3 Ma_xt 2026-03-17 3/150 2026-03-21 02:05 by JourneyLucky
[¿¼ÑÐ] ²ÄÁÏ 336 Çóµ÷¼Á +3 An@. 2026-03-18 4/200 2026-03-21 01:39 by JourneyLucky
[¿¼ÑÐ] Ò»Ö¾Ô¸»ªÄÏʦ´ó 070300£¨»¯Ñ§£©304·ÖÇóµ÷¼Á +3 0703ÎäÜ·»ÛÑ©304 2026-03-18 3/150 2026-03-21 00:48 by JourneyLucky
[¿¼ÑÐ] Ò»Ö¾Ô¸ÖØÇì´óѧ085700×ÊÔ´Óë»·¾³×¨Ë¶£¬×Ü·Ö308Çóµ÷¼Á +3 īīĮ 2026-03-18 3/150 2026-03-21 00:39 by JourneyLucky
[¿¼ÑÐ] Ò»Ö¾Ô¸Î÷ÄϽ»´ó£¬Çóµ÷¼Á +5 ²Ä»¯ÖðÃÎÈË 2026-03-18 5/250 2026-03-21 00:26 by JourneyLucky
[¿¼ÑÐ] 085410È˹¤ÖÇÄÜר˶317Çóµ÷¼Á£¨0854¶¼¿ÉÒÔ£© +4 xbxudjdn 2026-03-18 4/200 2026-03-20 09:07 by ²»168
[¿¼ÑÐ] Ò»Ö¾Ô¸¸£´ó288Óлú»¯Ñ§£¬Çóµ÷¼Á +3 Сľ³æ200408204 2026-03-18 3/150 2026-03-19 13:31 by houyaoxu
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û