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

正文內(nèi)容

面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言——c課件--第6章-閱讀頁(yè)

2025-01-22 01:57本頁(yè)面
  

【正文】 工具欄 。 步驟二: 在 【 Variable Type】 欄中輸入類(lèi)型名稱(chēng) CToolBar,在 【 Variable Name】 欄中輸入變量名稱(chēng) m_MyDataToolBar。 此時(shí) , Visual C++將自動(dòng)在主框架中的類(lèi)定義文件: CToolBar m_MyDataToolBar。在 【 Class name】 列表框選擇 CmainFrame類(lèi);在 【 Object Ids】 列表框中選中 CMainFrame;雙擊 【 Messages】 列表欄中的 WM_CREATE選項(xiàng) , 或者選中 WM_CREATE, 再單擊 【 Add Function】 按鈕 。 步驟四: 單擊 【 Edit Code】 按鈕 , ClassWizard將自動(dòng)在框架類(lèi)的實(shí)現(xiàn)文件 中 添 加 成 員 函 數(shù)OnCreate()。 具體代碼如下 , 其中粗體部分為新添加的代碼 。 // TODO: Add your specialized creation code here if (!(this)|| !(IDR_MYTOOLBAR)) { TRACE0(Failed to created toolbar\n)。 } return 0。 當(dāng)單擊工具欄上的新建按鈕 , 窗口中將彈出 【 個(gè)人資料 】 對(duì)話(huà)框 。 說(shuō)明: ( 1) 在上例創(chuàng)建工具欄的過(guò)程中 , 曾用到了 CToolBar類(lèi)的對(duì)象 , CToolBar類(lèi)是由 CControlBar類(lèi)派生而來(lái)的 , 它用于描述工具欄 。 其中:參數(shù) pParentWnd是指向父窗口的指針 , dwStyle是工具欄的風(fēng)格 , nID是子窗口的 ID號(hào) 。 該宏只在調(diào)試狀態(tài)下工作 。 如: int i = 1。 TRACE( Integer = %d, String = %s\n, i, sz )。 它們的原型分別為: TRACE0( exp ) TRACE1( exp, param1 ) TRACE2( exp, param1, param2 ) TRACE3( exp, param1, param2, param3 ) 返回 51 如: TRACE0( Start Dump of MyClass members: )。 TRACE1( Integer = %d\n, i )。Integer = 139。 char sz[] = one。 // Output: 39。 2. 如何實(shí)現(xiàn)工具欄的船塢化 所謂 船塢化工具欄 就是可以將工具欄拖動(dòng)到屏幕的任意位置上 , 還可以用鼠標(biāo)改變工具欄的大小 。 返回 52 首先要通過(guò)調(diào)用 CControlBar 的成員函數(shù)EnableDocking()使工具欄能夠船塢化;然后通過(guò)調(diào)用CFrameWnd類(lèi)的成員函數(shù) EnableDocking( ) 確保邊框窗口 能 夠 船 塢 化 ; 最 后 調(diào) 用 CFrameWnd 的 成 員 函 數(shù)DockControlBar( ) 使工具欄固定在邊框窗口上 。 這三個(gè)函數(shù)的原型為: void CControlBar::EnableDocking( DWORD dwStyle )。 void CFrameWnd::DockControlBar( CControlBar * pBar, UINT nDockBarID = 0, LPCRECT lpRect = NULL )。 返回 53 具體代碼如下 , 其中粗體部分為新添加的代碼 。 // TODO: Add your specialized creation code here if (!(this)|| !(IDR_MYTOOLBAR)) { TRACE0(Failed to created toolbar\n)。 } 返回 54 (CBRS_ALIGN_ANY)。 DockControlBar(amp。 return 0??梢杂檬髽?biāo)將它拖動(dòng)到窗口的任意位置 。 1 .創(chuàng)建狀態(tài)欄資源 下面 , 我們?cè)谇袄幕A(chǔ)上 , 為應(yīng)用程序 Dialog添加一個(gè)狀態(tài)欄 , 用來(lái)顯示一個(gè)消息區(qū) 、 一個(gè)字符串和 Num Lock鍵的狀態(tài) 。 步驟二: 在對(duì)話(huà)框中單擊 【 New】 按鈕 , 彈出 【 New Symbol】 對(duì)話(huà)框 , 在 【 Name】 欄中填入ID_STATUSBAR_STR,在 【 Value】 欄中的數(shù)字是系統(tǒng)為用戶(hù)提供的 ID數(shù)值 。 返回 56 步驟三: 新添加的 ID信息將會(huì)出現(xiàn)在 【 Resource Symbols】對(duì)話(huà)框的列表中 。 此時(shí)完成創(chuàng)建 ID的工作 。 在編輯器中單擊鼠標(biāo)右鍵 , 在彈出的菜單中選擇 【 New String】 菜單項(xiàng) 。 返回 57 2. 實(shí)現(xiàn)狀態(tài)欄 實(shí)現(xiàn)狀態(tài)欄的具體步驟如下: 步驟一: 在工作區(qū)窗口中選擇 【 Class View】 選項(xiàng)卡 , 用鼠標(biāo)右鍵單擊 【 CMainFrame】 選項(xiàng) , 在彈出菜單中選擇【 Add Member Variable】 菜單項(xiàng) 。 單擊 【 OK】 按鈕繼續(xù) 。 步驟二: 在 indicators的定義 ,具體代碼如下 , 其中粗體部分為新增加的代碼 。 返回 59 步驟三: 在文件 OnCreate()進(jìn)行修改 ,增加狀態(tài)欄的創(chuàng)建代碼 。 int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CFrameWnd::OnCreate(lpCreateStruct) == 1) return 1。 return 1。 EnableDocking(CBRS_ALIGN_ANY)。m_MyDataToolBar)。 return 1。 } 返回 61 步驟四: 編譯并運(yùn)行此應(yīng)用程序,將會(huì)看到在原來(lái)程序的基礎(chǔ)之上,在窗口的最下端增加了一個(gè)狀態(tài)欄。其中, Create函數(shù)是其成員函數(shù),該函數(shù)的原型為: BOOL Create( CWnd* pParentWnd, DWORD dwStyle = WS_CHILD | WS_VISIBLE |CBRS_BOTTOM, UINT nID = AFX_IDW_STATUS_BAR )。 返回 62 表 dwStyle的取值及對(duì)應(yīng)的狀態(tài)欄的風(fēng)格 ( 2) 在 indicators的定義:static UINT indicators[],用于描述狀態(tài)欄中所包含的內(nèi)容。向?qū)傻娜笔〉?indicator數(shù)組包含了四個(gè)元素,它們是 ID_SEPARATOR、 ID_INDICATOR_CAPS、ID_INDICATOR_NUM和 ID_INDICATOR_SCRL。 由于狀態(tài)欄也是一種窗口 , 所以在程序中可以直接調(diào)用該函數(shù) 。 ② 手動(dòng)處理狀態(tài)欄的 ON_UPDATE_COMMAND_UI更新信息 , 并在處理函數(shù)中調(diào)用 CCmdUI::SetText函數(shù) , 該函數(shù)的原型為: virtual void SetText( LPCTSTR lpszText )。 返回 64 ③ 調(diào)用函數(shù) CStatusBar::SetPaneText 與CStatusBar::GetPaneText可以設(shè)置或獲得任何窗格 ( 包括信息行窗格 ) 中的文本 。 CString GetPaneText( int nIndex ) const。 ( 4) 調(diào)用 CStatusBar:: CommandToIndex 可以獲得指定資源 ID號(hào)所在窗格的位置索引號(hào) , 該函數(shù)的原型為: int CommandToIndex( UINT nIDFind ) const。 返回 65 ( 5 ) 調(diào)用函數(shù) CStatusBar::SetPaneInfo 與CStatusBar::GetPaneInfo可設(shè)置或獲得窗格的長(zhǎng)度 、 風(fēng)格等信息 , 它們的函數(shù)原型為: void SetPaneInfo( int nIndex, UINT nID, UINT nStyle, int cxWidth )。 nID, UINTamp。 cxWidth ) const。 具體見(jiàn)表 。 但狀態(tài)欄中只能有一個(gè)窗格具有這種風(fēng)格 普通窗格 , 沒(méi)有 “ 拉伸 ” 、 “ 3D邊框 ” 、 “ 文字凸起顯示 ” 等效果 表 狀態(tài)欄中各窗格的風(fēng)格取值及對(duì)應(yīng)風(fēng)格 返回 67 ( 6 ) 調(diào)用 CStatusBar::SetPaneStyle 與CStatusBar::GetPaneStyle可分別用來(lái)設(shè)置或獲得狀態(tài)欄窗格的風(fēng)格 , 二者的原型如下: UINT GetPaneStyle( int nIndex ) const。 其中:參數(shù) nIndex是狀態(tài)欄中某一窗格的位置索引號(hào) ,nStyle為狀態(tài)欄中窗格的風(fēng)格 。當(dāng)用戶(hù)選擇 “ 關(guān)于 ” 菜單項(xiàng)時(shí) , 彈出 “ 字體對(duì)話(huà)框 ” ,當(dāng)單擊 “ 確定 ” 按鈕關(guān)閉此對(duì)話(huà)框后 , 在狀態(tài)欄上原來(lái)顯示文本測(cè)試狀態(tài)欄的空格中顯示 “ 您已經(jīng)查看過(guò)字體對(duì)話(huà)框 !” , 按照下面的方法進(jìn)行操作 。彈出 【 MFC ClassWizard】 對(duì)話(huà)框 , 在 【 Class name】 列表中選擇類(lèi) CMainFrame, 在 【 Object IDs】 列表中選擇ID_APP_ABOUT ; 右 邊 的 【 Messages】 欄 中 將 出 現(xiàn)COMMAND 和 UPDATE_COMMAND_UI , 雙擊COMMAND選項(xiàng) 。 步驟二: 接受系統(tǒng)缺省的函數(shù)名稱(chēng) OnAppAbout, 單擊【 OK】 按鈕 , 返回 MFC ClassWizard對(duì)話(huà)框 。 步驟三: 單擊 【 Edit Code】 按鈕 , 在代碼編輯窗口中打開(kāi) OnAppAbout函數(shù) 。 具體代碼如下 , 其中粗體部分為新增加的代碼 。 endif 返回 70 步驟四: 在代碼編輯窗口中 , 編輯函數(shù) OnAppAbout()。 void CMainFrame::OnAppAbout() {// TODO: Add your mand handler code here CMydataDialog dlg。 SIZE size=(您已經(jīng)查看過(guò)個(gè)人資料對(duì)話(huà)框 !)。 (index,ID_STATUSBAR_STR,SBPS_POPOUT,)。 } } 返回 71 說(shuō)明: 在此函數(shù)中 , 首先生成了一個(gè)字體對(duì)話(huà)框的實(shí)例 , 并且顯示為有模式對(duì)話(huà)框 。 首先調(diào)用函數(shù) GetTextExtent()來(lái)獲得字符串的長(zhǎng)度 , 然后調(diào)用 CommandToIndex()函數(shù)獲得窗格的索引 , 再通過(guò)調(diào)用函數(shù) SetPaneInfo()來(lái)設(shè)置窗格的長(zhǎng)度 、 風(fēng)格等信息 。 最后調(diào)用函數(shù) SetPaneText()來(lái)顯示文本內(nèi)容 。 返回 72 本章小結(jié) 在應(yīng)用程序中 , 要實(shí)現(xiàn)菜單的功能 , 其步驟和方法是先利用菜單編輯器建立菜單資源 , 然后編寫(xiě)菜單命令的WM_COMMAND消息映射函數(shù)及相應(yīng)代碼 。 對(duì)于一個(gè)單文檔應(yīng)用程序 , 消息傳遞的順序?yàn)椋阂晥D類(lèi) → 文檔類(lèi) → 框架類(lèi) → 應(yīng)用程序類(lèi) 。 并且利用該類(lèi)的成員函數(shù)可以在程序運(yùn)行時(shí)處理有關(guān)菜單的操作 。 CToolBar 類(lèi) 是 由CControlBar類(lèi)派生而來(lái)的 , 它用于描述工具欄 。 其創(chuàng)建方法是先創(chuàng)建狀態(tài)欄資源 , 然后在主框架窗口類(lèi) CMainFrame中創(chuàng)建響應(yīng) WM_CREATE的消息映射函數(shù) , 在 該 函 數(shù) 中 , 利用 MFC 提 供 的 工 具 欄 類(lèi)CStatusBar 對(duì)象的 Create 成 員 函 數(shù) , 創(chuàng) 建 狀 態(tài) 欄 。 狀態(tài)欄中的窗格的個(gè)數(shù)及所顯示的信息由在 indicators的元素的個(gè)數(shù)和元素的值來(lái)決定 。 ( 2) 在主框架窗口類(lèi)即 CMainFrame類(lèi)中 , 建立響應(yīng)WM_COMMAND和 WM_COMMAND_UI消息映射函數(shù) ,函數(shù)名自定 , 函數(shù)的功能是 , 當(dāng)程序運(yùn)行過(guò)程中 , 用戶(hù)選擇 “ 顯示鼠標(biāo)坐標(biāo) ” 菜單項(xiàng)時(shí)能在該菜單項(xiàng)的左邊顯示 “ √” 標(biāo)記 , 當(dāng)再次選擇該菜單項(xiàng)時(shí)標(biāo)記消失 。 返回 75 ( 4) 利用資源編輯器向現(xiàn)有的工具欄的末尾添加一個(gè)按鈕 , 按鈕的圖標(biāo)自己設(shè)計(jì) 。 ( 5) 在現(xiàn)有狀態(tài)欄的基礎(chǔ)上再增加一個(gè)信息行窗格 , 用于顯示鼠標(biāo)移動(dòng)過(guò)程中鼠標(biāo)的當(dāng)前 X, Y坐標(biāo) 。 在 VC環(huán)境中 , 利用 Help菜單查看和學(xué)習(xí) CMenu類(lèi) 、CToolBar類(lèi) 、 CStatusBar類(lèi) 、 CCmdUI類(lèi)的內(nèi)容 , 即其中的數(shù)據(jù)成員和成員函數(shù)
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1