第8章 Visual C++編程基礎(chǔ).ppt_第1頁
第8章 Visual C++編程基礎(chǔ).ppt_第2頁
第8章 Visual C++編程基礎(chǔ).ppt_第3頁
第8章 Visual C++編程基礎(chǔ).ppt_第4頁
第8章 Visual C++編程基礎(chǔ).ppt_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、第8章 Visual C+編程基礎(chǔ),本章要點,通過本章的學(xué)習(xí),使讀者: Windows編程基本概念,以及消息驅(qū)動的程序結(jié)構(gòu) Win32應(yīng)用程序的結(jié)構(gòu)和特點 MFC編程基礎(chǔ)、利用向?qū)Ы⒁粋€應(yīng)用程序框架 MFC程序的界面設(shè)計:包括菜單、工具欄上按鈕、對話框等 資源的創(chuàng)建與維護(hù):包括鼠標(biāo)資源、快捷鍵、菜單、工具欄等,8.1 Windows編程概念,8.1.1 事件與消息 事件以如下三種方式產(chǎn)生: (1) 通過輸入設(shè)備,如鍵盤和鼠標(biāo),產(chǎn)生硬件事件。 (2) 通過屏幕上可視的對象,如菜單、工具欄按鈕、滾動條和對話框上的控件。 (3) 來自Windows內(nèi)部,例如,當(dāng)一個后面的窗口顯示到前面來。 Win

2、dows將消息放入目標(biāo)應(yīng)用程序的消息對列中,在消息對列中所有消息都處于等待狀態(tài),直到應(yīng)用程序準(zhǔn)備處理它。,8.1.2 消息驅(qū)動,消息驅(qū)動也稱事件驅(qū)動,Windows程序設(shè)計是基于事件驅(qū)動,Windows對消息有一套完善嚴(yán)格的定義,并在其產(chǎn)生時將其發(fā)送給所有相關(guān)的應(yīng)用程序,這些消息用于驅(qū)動應(yīng)用程序運行以實現(xiàn)一定的功能。 事件驅(qū)動的程序設(shè)計不是由事件的順序來控制,而是由事件的發(fā)生來控制,而這種事件的發(fā)生是隨機(jī)的、不確定的,并沒有預(yù)定的順序,這樣就允許程序的用戶用各種合理的順序來安排程序的流程。,圖8-1 過程驅(qū)動與事件驅(qū)動模型之比較,8.2 Windows程序結(jié)構(gòu),8.2.1 簡單的Windows

3、應(yīng)用程序 【例8-1】一個簡單的Windows應(yīng)用程序(MyChap8_1), 控制臺應(yīng)用程序是以main函數(shù)作為進(jìn)入程序的初始入口點,但在Windows應(yīng)用程序中,main函數(shù)被WinMain函數(shù)取而代之。,WinMain函數(shù)的原型如下:,int WINAPI WinMain( HINSTANCE hInstance, /當(dāng)前實例句柄 HINSTANCE hPrevInstance, /以前的實例句柄 LPSTR lpCmdLine, /指向命令行參數(shù)的指針 int nCmShow) /窗口的顯示標(biāo)志, 每一個Windows應(yīng)用程序都需要Windows.h頭文件,它還包含了其它的Window

4、s頭文件。這些頭文件定義了Windows的所有數(shù)據(jù)類型、函數(shù)調(diào)用、數(shù)據(jù)結(jié)構(gòu)和符號常量。 程序中,MessageBox是一個Win32 API函數(shù),用來彈出對話框,顯示信息。,【例8-2】一個較完整的Windows應(yīng)用程序(MyChap8_2)。,如何實現(xiàn)?,程序說明如下: 1. WinMain()函數(shù) 2注冊窗口類 3創(chuàng)建窗口 4顯示和更新窗口 5消息循環(huán),while (GetMessage( /將消息發(fā)送給窗口過程, 這里是WnProc ,消息循環(huán),6消息處理函數(shù) 7結(jié)束消息循環(huán) 8.2.2 Windows編程特點 消息驅(qū)動機(jī)制; 設(shè)備獨立性; 基于資源的程序設(shè)計; 動態(tài)鏈接庫,1消息驅(qū)動機(jī)

5、制 2設(shè)備獨立性 3基于資源的程序設(shè)計 4動態(tài)鏈接庫,8.2.3 Windows基本數(shù)據(jù)類型,8.3 MFC編程基礎(chǔ),8.3.1 認(rèn)識MFC 8.3.2 MFC應(yīng)用程序框架 8.3.3 MFC消息映射及處理 8.3.4 消息響應(yīng)函數(shù) 8.3.5 程序的運行過程,8.4 第一個MFC應(yīng)用程序,用Visual C+6.0的MFC編寫Windows應(yīng)用程序,是一種“填空式”的編程方法,一般有三個步驟:,創(chuàng)建工程:用Visual C+6.0的MFC AppWizard生 成應(yīng)用程序的工程文件,也就是創(chuàng)建應(yīng)用程序的基 本框架。,(2) 可視化設(shè)計:用Visual C+自帶的工具軟件Winzards, 制

6、作Windows風(fēng)格的圖形用戶界面和各種控件,如矩形 按鈕、滾動條和單選按鈕等,(3) 編寫程序代碼:根據(jù)目標(biāo)程序的要求,用MFC ClassWizard 添加消息響應(yīng)函數(shù),然后用Visual C+提供的文本編輯器和C+ 程序設(shè)計語言在函數(shù)中編寫代碼。,8.4.1 MyHello應(yīng)用程序 8.4.2 創(chuàng)建工程 8.4.3 編寫程序代碼 8.4.4 編譯運行MyHello應(yīng)用程序,8.5 應(yīng)用程序分析 8.6資源 Visual C+6.0可以處理的資源有:菜單(Menu)、圖標(biāo)(Icon)、對話框(Dialog)、位圖(Bitmap)、快捷鍵(Accelerator)、工具欄(Toolbar)、光標(biāo)(Cursor)、描述信息(Version)和字符串表(String Table)。,習(xí)題八,1Windows程序設(shè)計的特點是什么? 2Windows應(yīng)用程序的優(yōu)點是什么? 3. MFC AppWizard(應(yīng)用向?qū)?可以創(chuàng)建哪幾類應(yīng)用程序

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論