freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

visualc教程第5章-資料下載頁

2024-10-04 16:59本頁面
  

【正文】 ID_SEPARATOR, ID_INDICATOR_CAPS, ID_INDICATOR_NUM, ID_INDICATOR_SCRL, } 狀態(tài)欄的常用操作 MFC的 CStatusBar類封裝了狀態(tài)欄的大部分操作。 1. 增加和減少窗格 狀態(tài)欄中的窗格分為信息行窗格和指示器窗格兩類。在狀 態(tài) 欄中增加一個(gè)信息行窗格,則只需在 indicators數(shù)組中的 適當(dāng)位置中增加一個(gè) ID_SEPARATOR標(biāo)識(shí)即可;若在狀態(tài) 欄中增加一個(gè)用戶指示器窗格,則在 indicators數(shù)組中的適 當(dāng)位置增加一個(gè)在字符串表中定義過的資源 ID,其字符串 的長度表示用戶指示器窗格的大小。若狀態(tài)欄減少一個(gè) 窗格,操作與增加相類似,需減少 indicators數(shù)組元素即可。 2. 在狀態(tài)欄上顯示文本 調(diào)用 CStatusBar::SetPaneText函數(shù)可以更新任何窗格 (包 括信息行窗格 )中的文本。此函數(shù)原型描述如下: 狀態(tài)欄的常用操作 BOOL SetPaneText( int nIndex, LPCTSTR lpszNewText, BOOL bUpdate = TRUE )。 lpszNewText表示要顯示的字符串。 nIndex是表示設(shè)置的窗格索引 (第一個(gè)窗格的索引為 0)。若 bUpdate為 TRUE,則系統(tǒng)自動(dòng)更新顯示的結(jié)果。 下面來看一個(gè)示例。 [例 Ex_SDIMouse] 將鼠標(biāo)在窗口客戶區(qū)的位置顯示在狀態(tài)欄上 (1) 創(chuàng)建一個(gè)默認(rèn)的單文檔應(yīng)用程序 Ex_SDIMouse。 (2) 將項(xiàng)目工作區(qū)切換到 ClassView頁面,展開 CMainFrame 所有項(xiàng),雙擊構(gòu)造函數(shù) CMainFrame,在文檔窗口中出現(xiàn)該 函數(shù)的定義,在它的前面就是狀態(tài)欄數(shù)組的定義。 (3) 將狀態(tài)欄 indicators數(shù)組的定義改為下列代碼: static UINT indicators[] = { ID_SEPARATOR, ID_SEPARATOR, }。 狀態(tài)欄的常用操作 (4) 由于鼠標(biāo)移動(dòng)消息 WM_MOUSEMOVE在 CMainFrame類映射后不起作用,只能映射到 CEx_SDIMouseView類中。CMainFrame類定義的成員變量,需要在 CEx_SDIMouseView類中添加訪問 CMainFrame類的代碼。Ex_SDIMouseView::OnMouseMove函數(shù)代碼如下: void CEx_SDIMouseView::OnMouseMove(UINT nFlags, CPoint point) { CString str。 CMainFrame* pFrame=(CMainFrame*)AfxGetApp()m_pMainWnd。 // 獲得主窗口指針 CStatusBar* pStatus=amp。pFramem_wndStatusBar。 // 獲得主窗口中的狀態(tài)欄指針 if (pStatus) { (X=%d, Y=%d, )。 // 格式化文本 pStatusSetPaneText(1,str)。 // 更新第二個(gè)窗格的文本 } CView::OnMouseMove(nFlags, point)。 } 狀態(tài)欄的常用操作 (5) 將 m_wndStatusBar變成 公共變量。 (6) 在 : include include (7) 編譯并運(yùn)行,結(jié)果如圖所示。 改變狀態(tài)欄的風(fēng)格 在 MFC的 CStatusBar類中,有兩個(gè)成員函數(shù)可以改變狀態(tài)欄風(fēng)格,它們是: void SetPaneInfo( int nIndex, UINT nID, UINT nStyle, int cxWidth )。 void SetPaneStyle( int nIndex, UINT nStyle )。 其中,參數(shù) nIndex表示要設(shè)置的狀態(tài)欄窗格的索引, nID用來為狀態(tài)欄窗格指定新的 ID, cxWidth表示窗格的像素寬度,nStyle表示窗格的風(fēng)格類型,用來指定窗格的外觀。 例如,將 OnMouseMove函數(shù)修改為下列代碼,則結(jié)果如圖所示。 void CEx_SDIMouseView::OnMouseMove(UINT nFlags, CPoint point) { CString str。 CMainFrame* pFrame=(CMainFrame*)AfxGetApp()m_pMainWnd。 // 獲得主窗口指針 CStatusBar* pStatus=amp。pFramem_wndStatusBar。 // 獲得主窗口中的狀態(tài)欄指針 改變狀態(tài)欄的風(fēng)格 if (pStatus) { pStatusSetPaneStyle(1, SBPS_POPOUT)。 (X=%d, Y=%d, ) // 格式化文本 pStatusSetPaneText(1,str)。 // 更新第二個(gè)窗格的文本 } CView::OnMouseMove(nFlags, point)。 } 風(fēng)格類型 含 義 SBPS_NOBORDERS 窗格周圍沒有 3D邊框 SBPS_POPOUT 反顯邊界以使文字“凸出來” SBPS_DISABLED 禁用窗格,不顯示文本 SBPS_STRETCH 拉伸窗格,并填充窗格不用的空白空間。但狀態(tài)欄只能有一個(gè)窗格具有這種風(fēng)格 SBPS_NORMAL 普通風(fēng)格,它沒有“拉伸”,“ 3D邊框”或“凸出來”等特性 狀態(tài)欄窗格的風(fēng)格類型 習(xí) 題 (1) MFC單文檔和多文檔應(yīng)用程序一般是由哪些類構(gòu)成? (2) 什么是助記符?它是如何在菜單中定義的? (3) 若對(duì)同一個(gè)菜單用 ClassWizard分別在視圖類和主框架窗口 類 CMainFrame都處理其 COMMAND消息,并在它們的函數(shù)中添加相同的代碼,則當(dāng)用戶選擇該菜單后,會(huì)有什么樣的結(jié)果?為什么? (4) 什么是鍵盤快捷鍵?它是如何定義的? (5) 什么是快捷菜單?用程序?qū)崿F(xiàn)一般需要哪些步驟? (6) 狀態(tài)欄的作用是什么?狀態(tài)欄的窗格分為幾類?如何添加和減少相應(yīng)的窗格? (7) 若狀態(tài)欄只有一個(gè)用戶定義的指示器窗格 (其 ID號(hào)為ID_TEXT_PANE),應(yīng)如何定義?若當(dāng)用戶在客戶區(qū)雙擊鼠標(biāo),在該窗格中顯示“雙擊鼠標(biāo)”字樣,則應(yīng)如何編程? (8) 上機(jī)練習(xí)本章的示例。
點(diǎn)擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1