VC: 對話方塊中添加狀態列的方法

來源:互聯網
上載者:User

 方法一:
1.新增成員變數CStatusBarCtrl m_StatusBar;
2.在OnInitDialog()中加入:
                  m_StatusBar.Create(WS_CHILD|WS_VISIBLE|SBT_OWNERDRAW, CRect(0,0,0,0), this, 0);

                  int strPartDim[3]= {100, 200, -1}; //分割數量
                  m_StatusBar.SetParts(3, strPartDim);

                  //設定狀態列文本
                  m_StatusBar.SetText("分欄一", 0, 0);
                  m_StatusBar.SetText("分欄二", 1, 0);
                  m_StatusBar.SetText("分欄三", 2, 0);
                  //下面是在狀態列中加入表徵圖
                  m_StatusBar.SetIcon(1,
                                SetIcon(AfxGetApp()->LoadIcon(IDR_MAINFRAME),
                                FALSE));//為第二個分欄中加的表徵圖

方法二:
1.新增成員變數CStatusBar m_wndStatusBar;
2.在OnInitDialog()中加入:
                  static UINT indicators[] =
                  {
                                ID_SEPARATOR,                        // status line indicator
                                ID_INDICATOR_CAPS,              //CAP lock indicator.
                                ID_INDICATOR_NUM,               //NUM lock indicator.
                                ID_INDICATOR_SCRL,              //SCRL lock indicator.
                  };

                  if (!m_wndStatusBar.Create(this) ||
                                !m_wndStatusBar.SetIndicators(indicators,
                                  sizeof(indicators)/sizeof(UINT)))
                  {
                                TRACE0("Failed to create status barn");
                                return -1;         // fail to create
                  }

                  UINT nID;        //控制狀態列裡面的分欄
                  m_wndStatusBar.SetPaneInfo(0,nID,SBPS_STRETCH|SBPS_NOBORDERS,100);      //傳回值存nID中
                  m_wndStatusBar.SetPaneText(0,"就緒");

                  m_wndStatusBar.SetPaneInfo(1,nID,SBPS_NORMAL,100);
                  m_wndStatusBar.SetPaneText(1,"大寫");

                  m_wndStatusBar.SetPaneInfo(2,nID,SBPS_POPOUT,100);
                  m_wndStatusBar.SetPaneText(2,"數字");

//                SetPaneInfo()函數的第三個參數的可選項如下:
//                The following indicator styles are supported:
//              SBPS_NOBORDERS     No 3-D border around the pane.
//              SBPS_POPOUT            Reverse border so that text "pops out."
//              SBPS_DISABLED         Do not draw text.
//              SBPS_STRETCH          Stretch pane to fill unused space. Only one pane per status bar can have this style.
//              SBPS_NORMAL            No stretch, borders, or pop-out.

//----------------讓這個狀態列最終顯示在對話方塊中-------------
                  RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0);

 

本文來自CSDN部落格,轉載請標明出處:http://blog.csdn.net/zhengknight/archive/2009/05/17/4194243.aspx

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.