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

正文內(nèi)容

visualc教程(上)ppt-資料下載頁(yè)

2025-01-19 09:40本頁(yè)面
  

【正文】 雙擊資源“ Menu”項(xiàng)中的 IDR_MAINFRAME,則菜單 編輯器窗口出現(xiàn)在主界面的右邊,相應(yīng)的 Ex_SDI項(xiàng) 目的菜單資源被顯示出來(lái),在菜單的最后一項(xiàng), Vis ual C++為用戶(hù)留出了一個(gè)空位置,用來(lái)輸入新的菜 單項(xiàng),如圖 在程序中使用對(duì)話(huà)框 (2) 在菜單的空位置上雙擊鼠標(biāo)左鍵,則出現(xiàn)它的屬性 對(duì)話(huà)框,在標(biāo)題框中輸入“測(cè)試 (amp。T)”,結(jié)果如圖所示,其 中符號(hào) amp。用來(lái)其后面的字符作為該菜單項(xiàng)的助記符,這樣 當(dāng)按住“ Alt”鍵不放,再敲擊該助記符鍵時(shí),對(duì)應(yīng)的菜單項(xiàng) 就會(huì)被選中,或在菜單打開(kāi)時(shí),直接按相應(yīng)的助記符鍵, 對(duì)應(yīng)的菜單項(xiàng)也會(huì)被選中。 在程序中使用對(duì)話(huà)框 (3) 單擊菜單屬性對(duì)話(huà)框中的“保存可見(jiàn)” (Keep Visible) 按鈕,使此屬性對(duì)話(huà)框一直可見(jiàn),以方便操作。單擊“測(cè) 試”菜單項(xiàng)下方的空位置,在屬性對(duì)話(huà)框中,輸入標(biāo)題“對(duì) 話(huà)框 (amp。D)”,在 ID框輸入該菜單項(xiàng)的資源標(biāo)識(shí) 。_TEST_DLG, 結(jié)果如圖所示,單擊屬性對(duì)話(huà)框右上角的關(guān)閉按鈕。 在程序中使用對(duì)話(huà)框 (4) 用鼠標(biāo)將新添加的菜單項(xiàng)拖到“查看”和“幫助”菜單項(xiàng) 之間,結(jié)果如圖所示。 菜單項(xiàng)“對(duì)話(huà)框”拖放后的位置 (5) 選擇“查看” ?“建立類(lèi)向?qū)А辈藛蚊罨蛑苯影?Ctrl+W快 捷鍵,則出現(xiàn) MFC ClassWizard對(duì)話(huà)框,該對(duì)話(huà)框會(huì)自動(dòng) 切換到 Message Maps頁(yè)面。 (6) 從“ Class name”組合框中選擇 CMainFrame,在 Object Ids 列表中選擇 ID_TEST_DLG,然后在 Messages框中選擇 CO MMAND消息。 在程序中使用對(duì)話(huà)框 (7) 單擊 [Add Function]按鈕或雙擊 COMMAND消息,出 現(xiàn)“ Add Member Function”對(duì)話(huà)框以輸入成員函數(shù)的名稱(chēng)。系統(tǒng)默認(rèn)的函數(shù)名為 OnTestDlg,如圖所示。該函數(shù)是對(duì)菜單項(xiàng) ID_TEST_DLG的映射,也就是說(shuō),當(dāng)在應(yīng)用程序運(yùn)行時(shí),用戶(hù)選擇“對(duì)話(huà)框”,則該函數(shù) OnTestDlg被調(diào)用,執(zhí)行函數(shù)中的代碼。 在程序中使用對(duì)話(huà)框 (8) 單擊 [OK]按鈕,在 ClassWizard的“ Member functions”列 表中將列出新增加的成員函數(shù)。選擇此函數(shù),單擊 [Edit Co de]按鈕 (或直接在函數(shù)名雙擊鼠標(biāo) ),在此成員函數(shù)中添加下 列代碼: void CMainFrame::OnTestDlg() { CFirstDlg dlg。 // 定義對(duì)話(huà)框類(lèi)對(duì)象 ()。 // 顯示對(duì)話(huà)框 } 代碼中, DoModal是 CDialog基類(lèi)成員函數(shù),它是用來(lái)顯 示和終止模式對(duì)話(huà)框。 在程序中使用對(duì)話(huà)框 (9) 在 OnTestDlg函數(shù)的實(shí)現(xiàn)文件 CFirstDlg類(lèi)的頭文件包含,即: include include include “ (10) 編譯并運(yùn)行。在應(yīng)用程序菜單上,選擇“測(cè)試” ? “對(duì) 話(huà)框”菜單項(xiàng),將出現(xiàn)如圖的對(duì)話(huà)框,這個(gè)對(duì)話(huà)框就是剛 才添加的對(duì)話(huà)框。 使用無(wú)模式對(duì)話(huà)框 1. 模式對(duì)話(huà)框 所謂“模式對(duì)話(huà)框”是指當(dāng)對(duì)話(huà)框被彈出,用戶(hù)必須在對(duì)話(huà)框中作出相應(yīng)的操作,在退出對(duì)話(huà)框之前,對(duì)話(huà)框所在的應(yīng)用程序不能繼續(xù)執(zhí)行。 一般情況下,模式對(duì)話(huà)框會(huì)有 [OK](確定 )和 [Cancel](取消 )按鈕。單出 [OK]按鈕,系統(tǒng)認(rèn)定用戶(hù)在對(duì)話(huà)框中的選擇或輸入有效,對(duì)話(huà)框退出;單擊 [Cancel]按鈕,對(duì)話(huà)框中的選擇或輸入無(wú)效,對(duì)話(huà)框退出,程序恢復(fù)原有狀態(tài)。 模式對(duì)話(huà)框的應(yīng)用范圍較廣,上面示例中的對(duì)話(huà)框和平常所見(jiàn)到的大多數(shù)對(duì)話(huà)框都是模式對(duì)話(huà)框。 使用無(wú)模式對(duì)話(huà)框 所謂“無(wú)模式對(duì)話(huà)框”是指當(dāng)對(duì)話(huà)框被彈出后,一直保留 在屏幕上,用戶(hù)可繼續(xù)在對(duì)話(huà)框所在的應(yīng)用程序中進(jìn)行其 它操作;當(dāng)需要使用對(duì)話(huà)框時(shí),只需象激活一般窗口一樣 單擊對(duì)話(huà)框所在的區(qū)域即可激活。 [例 Ex_Modeless] 創(chuàng)建并使用無(wú)模式對(duì)話(huà)框 (1) 用 MFC AppWizard(exe)創(chuàng)建一個(gè)默認(rèn)的單文檔應(yīng)用程 序 x_Modeless。 (2) 在該項(xiàng)目中添加一個(gè)對(duì)話(huà)框資源,將其標(biāo)識(shí)符設(shè)為IDD_DIALOG_SECOND,標(biāo)題設(shè)為“無(wú)模式對(duì)話(huà)框”, (3) 對(duì)話(huà)框字體和大小設(shè)為“宋體, 9號(hào)”。為IDD_DIALOG_SECOND對(duì)話(huà)框資源創(chuàng)建一個(gè) 對(duì)話(huà)框類(lèi) CSecondDlg。 2. 無(wú)模式對(duì)話(huà)框 使用無(wú)模式對(duì)話(huà)框 (4) 按 Ctrl+W快捷鍵打開(kāi) MFC ClassWizard,從“ Class name”列表中選擇 CSecondDlg,在 IDs列表中選擇 IDOK, 是對(duì)話(huà)框中 [OK] 按鈕的標(biāo)識(shí)符,然后在 Messages框中 選擇 BN_CLICKED(單擊按鈕 )消息,單擊 [Add Function] 按鈕或雙擊 BN_CLICKED消息,出現(xiàn) “ Add Member Function”對(duì)話(huà)框以輸入成員函數(shù)的名稱(chēng),保留系統(tǒng)默 認(rèn)的函數(shù)名為 OnOK,如圖所示。 使用無(wú)模式對(duì)話(huà)框 (5) 修改 CSecondDlg::OnOK函數(shù)中的代碼。 void CSecondDlg::OnOK() { // 添加其他代碼使用戶(hù)輸入對(duì)話(huà)框的數(shù)據(jù)有效 DestroyWindow()。 // 終止對(duì)話(huà)框顯示 delete this。 // 刪除對(duì)話(huà)框,釋放內(nèi)存空間 } 代碼中 , DestroyWindow是對(duì)話(huà)框基類(lèi) CWnd的一個(gè)成員函數(shù), 用來(lái)終止窗口。 (6) 添加 [Cancel]按鈕 (標(biāo)識(shí)符為 IDCANCEL)的 BN_CLICKED 消息映射,并修改其映射函數(shù) CSecondDlg::OnCancel的代碼。 void CSecondDlg::OnCancel() // 單擊 [Cancel](取消 )按鈕 { DestroyWindow()。 delete this。 } 使用無(wú)模式對(duì)話(huà)框 (7) 在項(xiàng)目工作區(qū)窗口中選擇 ResourceView頁(yè)面,雙擊資源“ Menu”項(xiàng)中的 IDR_MAINFRAME,打開(kāi)菜單資源。 (8) 在菜單“查看”與“幫助”之間添加一個(gè)“測(cè)試 (amp。T)”菜單,該菜單項(xiàng)的資源標(biāo)識(shí)設(shè)為ID_TEST_DLG。 (9) 按 Ctrl+W快捷鍵,打開(kāi) MFC ClassWizard對(duì)話(huà)框,在 Message Maps頁(yè)面中從“ Class name”列表中選擇 CMainFrame,在 Object IDs列表中選擇ID_TEST_DLG,然后在 Messages框中選擇COMMAND消息。 使用無(wú)模式對(duì)話(huà)框 (10) 單擊 [Add Function]按鈕或雙擊 COMMAND消息,出現(xiàn) “ Add Member Function”對(duì)話(huà)框,取系統(tǒng)默認(rèn)的函數(shù)名OnTestDlg,并在此成員函數(shù)中添加下列代碼: void CMainFrame::OnTestDlg() { CSecondDlg *pDlg = new CSecondDlg。 // 使用 new為對(duì)分配內(nèi)存空間 pDlgCreate( IDD_DIALOG_SECOND )。 // 創(chuàng)建對(duì)話(huà)框 pDlgShowWindow( SW_NORMAL )。 // 顯示對(duì)話(huà)框 } 代碼中, Create可用來(lái)以一個(gè)對(duì)話(huà)框資源來(lái)創(chuàng)建對(duì)話(huà)框, ShowWindow是一個(gè) CWnd成員函數(shù),用來(lái)顯示對(duì)話(huà)框, SW_NORMAL是用來(lái)指定將窗口顯示成一般常用的狀態(tài)。 使用無(wú)模式對(duì)話(huà)框 (11) 在文件 CSecondDlg類(lèi)的文件包含 include include (12) 編譯并運(yùn)行。在應(yīng)用程序菜單上,多次選擇“測(cè)試” ? “對(duì) 話(huà)框”菜單項(xiàng),將會(huì)在同一個(gè)位置中出現(xiàn)多個(gè)對(duì)話(huà)框,拖動(dòng)這 些對(duì)話(huà)框到適當(dāng)位置,如圖 : 這就是無(wú)模式對(duì)話(huà)框的效果,從上述示例可以看出:模式和無(wú)模式對(duì)話(huà)框在用 編輯器設(shè)計(jì)和使用 MFC ClassWizard創(chuàng)建用 戶(hù)對(duì)話(huà)框類(lèi)的方法是一致 的,但在對(duì)話(huà)框的創(chuàng)建和 退出的方式是不同的。 通用對(duì)話(huà)框 表 MFC的通用對(duì)話(huà)框 對(duì)話(huà)框 用 途 CColorDialog 顏色對(duì)話(huà)框,允許用戶(hù)選擇或創(chuàng)建顏色 CFileDialog 文件對(duì)話(huà)框,允許用戶(hù)打開(kāi)或保存一個(gè)文件 CFindReplaceDialog 查找替換對(duì)話(huà)框,允許用戶(hù)查找或替換指定字符串 CPageSetupDialog 頁(yè)面設(shè)置對(duì)話(huà)框,允許用戶(hù)設(shè)置頁(yè)面參數(shù) CFontDialog 字體對(duì)話(huà)框,允許用戶(hù)從列出的可用字體中選擇一種字體 CPrintDialog 打印對(duì)話(huà)框,允許用戶(hù)設(shè)置打印機(jī)的參數(shù)及打印文檔 這些對(duì)話(huà)框都有一個(gè)共同特點(diǎn):它們都從用戶(hù)獲取信息,但并不對(duì)信息作處理。 通用對(duì)話(huà)框 選定一個(gè)文件后,單擊 [打開(kāi) ]按鈕,就會(huì)彈出一個(gè)消息對(duì)話(huà)框,顯示該文件的全路徑名稱(chēng)。 void CMainFrame::OnTestDlg() { CString filter。 filter = “文本文件 (*.txt)|*.txt|C++文件 (*.h,*.cpp)|*.h。*.cpp||。 CFileDialog dlg (TRUE, NULL, NULL, OFN_HIDEREADONLY, filter)。 if ( () == IDOK){ CString str。 str = ()。 AfxMessageBox(str)。 } } 代碼中, CString是 MFC中的一個(gè)類(lèi),用來(lái)操作字符串。 通用對(duì)話(huà)框 通用文件對(duì)話(huà)框類(lèi) CFileDialog的構(gòu)造函數(shù)的原型如下: CFileDialog( BOOL bOpenFileDialog, LPCTSTR lpszDefExt = NULL, LPCTSTR lpszFileName = NULL, DWORD dwFlags = OFN_HIDEREADONLY | OFN_O VERWRITEPROMPT, LPCTSTR lpszFilter = NULL, CWnd* pParentWnd = NULL )。 函數(shù)原型中, LPCTSTR類(lèi)型用來(lái)表示一個(gè)常值字符指針, 這里可以將其理解成是一個(gè)常值字符串類(lèi)型。上述代碼中, AfxMessageBox用來(lái)彈出一個(gè)消息對(duì)話(huà)框 (后面還要討論 )。 GetPathName是 CFileDialog類(lèi)成員函數(shù),用來(lái)獲取文件的 全路徑名。 消息對(duì)話(huà)框 消息對(duì)話(huà)框是最簡(jiǎn)單的一類(lèi)對(duì)話(huà)框,用來(lái)顯示信息的。 圖標(biāo)類(lèi)型 含 義 MB_ICONHAND、 MB_ICONSTOP、 MB_ICONERROR 用來(lái)表示 MB_ICONQUESTION 用來(lái)表示 MB_ICONEXCLAMATION、 MB_ICONWARNING 用來(lái)表示 MB_ICONASTERISK、 MB_ICONINFORMATION 用來(lái)表示 按鈕類(lèi)型 消息對(duì)話(huà)框常用按鈕類(lèi)型 MB_ABOUTRETRYIGNORE 消息對(duì)話(huà)框常用按鈕類(lèi)型 MB_OK 消息對(duì)話(huà)框常用按鈕類(lèi)型 MB_OKCANCEL 消息對(duì)話(huà)框常用按鈕類(lèi)型 MB_RETRYCACEL 消息對(duì)話(huà)框常用按鈕類(lèi)型 MB_YESNO 消息對(duì)話(huà)框常用按鈕類(lèi)型 MB_YESNOCANCEL 消息對(duì)話(huà)框常用按鈕類(lèi)型 消息對(duì)話(huà)框常用按鈕類(lèi)型 習(xí) 題 (1) 什么是對(duì)話(huà)框模板、對(duì)話(huà)框資源和對(duì)話(huà)框類(lèi)? (2) 對(duì)一個(gè)對(duì)話(huà)框編程一般經(jīng)過(guò)幾個(gè)步驟? (3) 什么是模式和無(wú)模式對(duì)話(huà)框?它們有哪些不同? (4) 通用對(duì)話(huà)框有哪些?調(diào)用時(shí)需要注意哪些要點(diǎn)? (5) 在單文檔應(yīng)用程序中,通過(guò)調(diào)用對(duì)話(huà)框類(lèi) DoModal函數(shù) 將每一個(gè)通用對(duì)話(huà)框都顯示一遍,看看這些通用對(duì)話(huà)框的界面是怎樣的? (6)創(chuàng)建一個(gè)默認(rèn)基于對(duì)話(huà)框的應(yīng)用程序,然后看一看其中的 對(duì)話(huà)框類(lèi)和本章在單文檔應(yīng)用程序添加的對(duì)話(huà)框類(lèi)有什么不同? 第 4章 常用控件
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1