• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-145  評論-173  文章-70  trackbacks-0
            步驟:
            1,添加String Table中的資源,IDS_TIMER
            2,在MainFrm.cpp文件中的indicators數組中添加IDS_TIMER
            3,在OnCreate函數中設置一個定時器。
            4.添加消息為WM_TIMER的函數OnTimer。

            代碼:
            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.Create(this)?||
            ????????
            !m_wndStatusBar.SetIndicators(indicators,
            ??????????
            sizeof(indicators)/sizeof(UINT)))
            ????
            {
            ????????TRACE0(
            "Failed?to?create?status?bar\n");
            ????????
            return?-1;??????//?fail?to?create
            ????}


            ????
            //?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);
            ????
            ????
            int?indexStatusBar?=?0;
            ????CTime?t?
            =?CTime::GetCurrentTime();
            ????CString?strTime?
            =?t.Format("%H:%M:%S");
            ????CClientDC?dc(
            this);
            ????CSize?sz?
            =?dc.GetTextExtent(strTime);
            ????indexStatusBar?
            =?m_wndStatusBar.CommandToIndex(IDS_TIMER);
            ????m_wndStatusBar.SetPaneInfo(indexStatusBar,IDS_TIMER,SBPS_NORMAL,sz.cx);
            ????m_wndStatusBar.SetPaneText(indexStatusBar,strTime);

            ????SetTimer(
            1,1000,NULL);

            ????
            return?0;
            }





            void?CMainFrame::OnTimer(UINT?nIDEvent)?
            {
            ????
            //?TODO:?Add?your?message?handler?code?here?and/or?call?default
            ????int?indexStatusBar?=?0;
            ????CTime?t?
            =?CTime::GetCurrentTime();????????//獲得當前時間
            ????CString?strTime?=?t.Format("%H:%M:%S");????//格式化當前時間
            ????CClientDC?dc(this);
            ????CSize?sz?
            =?dc.GetTextExtent(strTime);????//獲得時間顯示的寬度
            ????indexStatusBar?=?m_wndStatusBar.CommandToIndex(IDS_TIMER);????//獲得窗格的索引
            ????m_wndStatusBar.SetPaneInfo(indexStatusBar,IDS_TIMER,SBPS_NORMAL,sz.cx);????//改變窗格的寬度
            ????m_wndStatusBar.SetPaneText(indexStatusBar,strTime);????????//設置窗格的內容
            ????

            ????CFrameWnd::OnTimer(nIDEvent);
            }

            注意在CMainFrame函數中的那個OnCreate函數中的部分代碼,設置顯示時間的,其實是一個初始化的功能,因為開始的時候如果沒有這個代碼是不顯示時間的。當然,如果僅僅是一個計時器,那么后面根據這個代碼,也是會自動更新時間的,只是初始化的話未知時間。


            吸取的一點就是:懂得了如何改變狀態欄的寬度,這樣就不會出現前面的那個不知道狀態欄太窄怎么辦的問題。
            解決方法是:
            得到顯示的CSize,然后使用CommandToIndex來得到是需要改變那個的寬度(即得到顯示內容的窗格的索引,正確的改變那一個,而不是所有的寬度),設置SetPaneInfo來改變寬度。最終設置內容就OK了。
            詳細點就是:真正改變寬度的是SetPaneInfo的最后一個參數,而這個正式CSize的的寬度cx。
            posted on 2010-02-17 22:17 deercoder 閱讀(512) 評論(0)  編輯 收藏 引用
            久久综合综合久久综合| 狠狠精品久久久无码中文字幕| 欧美激情一区二区久久久| 久久精品亚洲AV久久久无码| 久久丫忘忧草产品| 国产精品一区二区久久| 久久涩综合| 久久精品国内一区二区三区| 午夜福利91久久福利| 国产精品久久久亚洲| 亚洲人成电影网站久久| 日本久久久精品中文字幕| 亚洲中文字幕无码久久2020| 国产精品久久久99| 久久久无码人妻精品无码| 免费一级欧美大片久久网| 久久电影网一区| 久久国产亚洲精品无码| 偷偷做久久久久网站| 久久久久久国产精品美女| 久久精品国产亚洲沈樵| 无码久久精品国产亚洲Av影片 | 久久久精品人妻一区二区三区蜜桃| 国产成人无码精品久久久久免费| 99久久无色码中文字幕人妻| 欧美激情精品久久久久久久九九九 | 一本色道久久88综合日韩精品| 久久精品国产半推半就| A狠狠久久蜜臀婷色中文网| 色欲久久久天天天综合网| 香蕉久久夜色精品国产2020| 久久精品国产精品亚洲艾草网美妙| 久久成人国产精品二三区| 91精品国产91久久综合| 久久综合久久自在自线精品自| 久久成人小视频| 国产精品美女久久福利网站| 婷婷久久综合九色综合九七| 亚洲精品成人网久久久久久| 无夜精品久久久久久| 亚洲va久久久噜噜噜久久男同 |