青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 64,comments - 18,trackbacks - 0

1、大致說來windows編程有兩種方法:
a.windwos c方式(SDK),SDK編程就是直接調用windows的API進行編程;
b.c++方式:即對SDK函數進行包裝,如VC的MFC,BCB的OWL等。MFC把這些API封閉起來,共有一百多個類組成.

2、API,全稱application program interface,意思是應用程序編程接口(說起API并不僅僅指windows而言, windows支持的API叫winapi)。winapi就是應用程序和windows之間通訊的一個編程界面。windows提供了上千個API函數,以方便程序員來編寫應用程序。

3、WinSDK程序設計就是API方式的windows程序設計。SDK,全稱Software Developers Kit,意思是軟件開發工具箱。

4、MFC,全稱Microsoft Foundation Classes,偽軟把WinAPI進行封裝的類庫。它是一個類的集合,通過覆蓋WinAPI,為編程提供了一個面向對象的界面。它使windows程序員能夠利用C++面象對象的特性進行編程,類似BCB的OWL,Delphi的VCL組件。它把那些進行SDK編程時最繁瑣的部分提供給程序員,使之專注于功能的實現。你不妨把它想象成類似TC提供的函數庫吧。

5、dos下的C編程的main()一樣,windows下的入口是WinMain()函數。

6、WinMain()所起的作用:初始化,展示,銷毀應用程序等。
第一個參數:應用程序的當前實例句柄。
第二個參數:應用程序的前一個實例句柄,別管它,對于Win32位而言,它一般是NULL.
第三個參數:指向任何傳給程序的命令行參數。PSTR代表"指向字符串的指針"。
第四個參數:它告訴應用程序如何初始化窗口,如最大化,最小化等狀態。

7、句柄(handle):
在標準C庫中句柄用來對文件輸入輸出。
在Windows環境中,句柄是用來標識項目的,這些項目包括:
*.模塊(module)
*.任務(task)
*.實例(instance)
*.文件(file)
*.內存塊(block of memory)
*.菜單(menu)
*.控制(control)
*.字體(font)
*.資源(resource),包括圖標(icon),光標(cursor),字符串(string)等
*.GDI對象(GDI object),包括位圖(bitmap),畫刷(brush),元文件(metafile),調色板(palette),畫 筆(pen),區域(region),以及設備描述表(device context)。
WINDOWS程序中并不是用物理地址來標識一個內存塊,文件,任務或動態裝入模塊的,相反的,WINDOWS API給這些項目分配確定的句柄,并將句柄返回給應用程序,然后通過句柄來進行操作。

窗口句柄:
系統通過窗口句柄來在整個系統中唯一標識一個窗口,發送一個消息時必須指定一個窗口句柄表明該消息由那個窗口接收。而每個窗口都會有自己的窗口過程,所以用戶的輸入就會被正確的處理。

8、所有的命名采用了匈牙利表示法。如消息的前綴使用msg.句柄使用h.函數使用fn等。

9、MainFrm.cpp、MainFrm.h:
這兩個文件將從CFrameWnd(SDI應用程序)或CMDIFrameWnd(MDI應用程序)派生CMainFrame類。如果在AppWizard的Application Options頁(6步中的第4步)中選擇了對應的可選項的話,CMainFrame類將處理工具條按鈕和狀態條的創建。MAINFRM.CPP文件還含有MFC應用程序提供的默認工具條按鈕的對象ID——叫做buttons數組。

10、DOS程序主要使用順序的,過程驅動的程序設計方法。順序的,過程驅動的程序有一個明顯的開始,明顯的過程及一個明顯的結束,因此程序能直接控制程序事件或過程的順序。雖然在順序的過程驅動的程序中也有很多處理異常的方法,但這樣的異常處理也仍然是順序的,過程驅動的結構。

11、Windows的驅動方式是事件驅動,就是不由事件的順序來控制,而是由事件的發生來控制,所有的事件是無序的。做為一個程序員,在你編寫程序時,你并不知道用戶先按哪個按紐,也不知道程序先觸發哪個消息。你的任務就是對正在開發的應用程序要發出或要接收的消息進行排序和管理。事件驅動程序設計是密切圍繞消息的產生與處理而展開的,一條消息是關于發生的事件的消息。

12、Windows程序則至少兩個主程序,
一個是WinMain(),
int WINAPI WinMain(
          HINSTANCE hInstance,    // handle to current instance
          HINSTANCE hPrevInstance,  // handle to previous instance
          LPSTR lpCmdLine,      // command line
          int nCmdShow      // show state
         );
另一個是窗口過程函數WndProc,它的函數原型為:
long FAR PASCAL WndProc(HWND hWnd,WORD message,WORD wParam,LONG lParam);

13、窗口函數與回調函數:
在Windows中,應用程序通過要求Windows完成指定操作,而承擔這項通信任務的API函數就是Windows的相應窗口函數WndProc。應用程序不直接調用任何窗口函數,而是等待Windows調用窗口函數,請求完成任務或返回信息。為保證Windows調用這個窗口函數,這個函數必須先向Windows登記,然后在Windows實施相應操作時回調,所以窗口函數又稱為回調函數。WndProc是一個主回調函數,Windows至少有一個回調函數。典型的回調函數有窗口過程、對話框過程和鉤子函數。實際上,也許有不止一個的窗口過程。例如,每一個不同的窗口類都有一個與之相對應的窗口過程。

15、實例:在Windows中,能多次同時運行同一個應用程序,即運行多個副本,每個副本叫做一個“實例”。

16、C runtime函數庫:

就跟它的名字一樣,運行類型信息
主要有COject類和CRuntimeClass類來實現,用來存貯COject類和派生類的運行類型信息,
1.類的基本情況:如類的名字,存貯空間大小,用于運行類的類型確定.
2.ms在C++的標準上,添加動態創建的類對象功能,也就是時時提到的動態創建
3.串行化處理.
The OS does not know main(), so C-runtime is first called and transfer control to main
it also provide library for common usage, such as math functions

17、WinMain()函數的調用約定是PASCAL。

在這里PASCAL是一個調用約定,由于這種方式最早由PASCAL采用,所以這么叫。
在MSDN中的C++ Language Reference中,Calling Conventions這一章都是講調用約定的。

約定:微軟重定義了許多約定類型,為的是可以讓代碼更容易跨平臺或者跨編譯器。
其實,調用約定要解決兩個問題,都是針對堆棧操作:
1。參數傳遞的順序(本質是壓棧的順序)
2。誰負責平棧(調用者還是調用對象)
一個函數的聲明、定義和實現中的調用方式一般都一致。

WINAPI標識符的定義是:#define WINAPI __stdcall, __stdcall指Window調用函數的一種方式,也就是如何在堆中存取函數參數的方式。許多Windows Api函數調用聲明為__stdcall方式。

18、用位的“或”操作(操作符“|”)把若干個常數組合起來控制消息窗口顯示的按鈕和圖標等。

19、在Windows應用程序中,每一個窗口都必須從屬于一個窗口類,窗口類定義了窗口所具有的屬性,如它的樣式、圖標、鼠標指針、菜單名稱及窗口過程名等。
窗口種類是定義窗口屬性的模板,這些屬性包括窗口式樣,鼠標形狀,菜單等等,窗口種類也指定處理該類中所有窗口消息的窗口函數.只有先建立窗口種類,才能根據窗口種類來創建Windows應用程序的一個或多個窗口.創建窗口時,還可以指定窗口獨有的附加特性.窗口種類簡稱窗口類,窗口類不能重名.在建立窗口類后,必須向Windows登記.建立窗口類就是用WNDCLASS結構定義一個結構變量.

20、Visual C++提供Alt+F8功能鍵,進行文件規格化,根據周圍的代碼行,正確縮進選定的代碼行。常使用該按鍵可使得文件保持規格化(注,Alt+F8功能鍵對連續兩個CASE語句則會發生處理錯誤,不能規格化)。

21、消息:
一個消息由一個消息名稱(UINT),和兩個參數(WPARAM,LPARAM)。當用戶進行了輸入或是窗口的狀態發生改變時系統都會發送消息到某一個窗口。

22、一個典型的應用程序應該活動在稱為“框架窗口”中。一個框架窗口是一個全功能的主窗口,用戶可以改變尺寸、最小化、最大化等。

23、消息機制:
系統將會維護一個或多個消息隊列,所有產生的消息都回被放入或是插入隊列中。系統會在隊列中取出每一條消息,根據消息的接收句柄而將該消息發送給擁有該窗口的程序的消息循環。每一個運行的程序都有自己的消息循環,在循環中得到屬于自己的消息并根據接收窗口的句柄調用相應的窗口過程。而在沒有消息時消息循環就將控制權交給系統所以Windows可以同時進行多個任務。

24、預編譯頭文件:
VC++程序一般包含的頭文件都比較復雜,如果每次都逐行分析可能會花很多時間,所以VC++默認設置是第一次編譯時分析所有頭文件,生成.pch文件,這個文件很大,但以后每次編譯時就可以節省很多時間。如果刪除了這個文件,下次編譯時VC++會自動生成它。
StdAfx.h是每個MFC程序的類中必須包括的文件,它一般由AppWizard自動生成,包括編譯MFC類所必須的定義。

25、Windows支持兩種類型的對話框:模式和無模式對話框。
模式對話框一旦出現在屏幕上,只有當它退出時,屏幕上該應用程序的其余部分才能響應。
無模式對話框出現在屏幕上時,程序的其余部分也可以作出響應,它就象浮動在上面一樣。

26、單文檔界面(SDI),只有一個框架窗口。
MDI 系統允許用戶在同一應用程序中同時可以查看多個文檔。

posted on 2007-05-16 22:48 rebol 閱讀(1295) 評論(0)  編輯 收藏 引用 所屬分類: Final work LOG
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久久精品国产免费观看同学| 久久久精品日韩| 午夜精品视频在线| 一区二区三区日韩精品视频| 亚洲第一中文字幕在线观看| 国产在线麻豆精品观看| 韩国三级在线一区| 国产一区二区三区在线免费观看| 国产精品日韩电影| 国产精品伊人日日| 狠狠色综合一区二区| 亚洲国产成人在线| 在线视频亚洲一区| 性欧美大战久久久久久久免费观看| 欧美一区免费视频| 久热精品在线| 亚洲黄一区二区| 美女露胸一区二区三区| 欧美激情精品| 99re热这里只有精品视频| 亚洲一区二区毛片| 久久久久国产一区二区| 欧美风情在线| 欧美日韩精品一区二区在线播放| 国产精品久久久久久久久久尿| 国产精品高清免费在线观看| 韩日成人av| 亚洲理论在线| 欧美a一区二区| 国产一区二区三区成人欧美日韩在线观看 | 一区二区国产精品| 亚洲国产精品一区二区第一页| 国产精品你懂的在线| 亚洲精品麻豆| avtt综合网| 亚洲精品一区二区在线| 1000部精品久久久久久久久| 午夜精品一区二区三区电影天堂| 久久riav二区三区| 猛干欧美女孩| 欧美激情视频在线免费观看 欧美视频免费一| 欧美日韩成人在线观看| 国产日韩欧美综合精品| 久久精品理论片| 国产精品99久久久久久久久| 欧美日韩国产成人精品| 欧美尤物一区| 欧美不卡在线| 欧美一级专区| 亚洲免费人成在线视频观看| 99精品免费网| 快射av在线播放一区| 一区二区三区精品视频| 欧美电影在线观看完整版| 亚洲国产成人不卡| 亚洲午夜极品| 亚洲国产免费看| 午夜亚洲一区| 欧美性感一类影片在线播放| 亚洲欧洲另类| 欧美成人综合一区| 久久精品最新地址| 国产日韩欧美视频| 欧美在线视频全部完| 在线视频免费在线观看一区二区| 免费在线看成人av| 一区二区在线看| 老司机免费视频一区二区| 欧美亚洲综合久久| 国产日韩精品视频一区二区三区| 午夜欧美不卡精品aaaaa| 亚洲最新视频在线播放| 欧美精品色综合| 亚洲深夜影院| 亚洲天堂网在线观看| 欧美全黄视频| 亚洲伊人网站| 亚洲综合社区| 国产一区二区精品久久91| 久久精品视频免费| 久久久久久自在自线| 在线不卡亚洲| 91久久久久久国产精品| 欧美久久婷婷综合色| 99在线精品观看| 宅男噜噜噜66一区二区66| 国产精品一区二区你懂的| 欧美亚洲视频一区二区| 久久国产精品色婷婷| 亚洲激情国产| 亚洲精品美女在线观看| 国产精品视频久久一区| 久久天堂国产精品| 欧美高清视频www夜色资源网| 亚洲一区二区免费在线| 亚洲欧美久久久| 1769国内精品视频在线播放| 亚洲麻豆视频| 国产日韩欧美精品| 亚洲国产毛片完整版| 国产精品五月天| 欧美成人精品h版在线观看| 欧美人与性动交α欧美精品济南到| 亚洲一区视频在线| 在线观看免费视频综合| 先锋亚洲精品| 久久精品五月| 亚洲天堂久久| 久久久久国产精品一区二区| 一本大道久久a久久精品综合| 亚洲尤物视频在线| 亚洲人成啪啪网站| 亚洲在线中文字幕| 欧美精品日韩一区| 免费毛片一区二区三区久久久| 欧美精品在线视频观看| 久久免费黄色| 欧美日韩在线三区| 另类天堂av| 国产精品男人爽免费视频1| 欧美激情一区二区三区四区| 国产精品亚发布| 亚洲人成在线观看网站高清| 好看的亚洲午夜视频在线| 国产精品99久久久久久白浆小说| 亚洲国产婷婷| 久久久久久久999精品视频| 亚洲欧美日韩精品在线| 欧美日韩视频| 欧美国产一区二区| 久久久另类综合| 国产精品系列在线播放| 日韩午夜电影| 亚洲精品中文字| 老牛嫩草一区二区三区日本 | 久久免费视频这里只有精品| 午夜精品视频在线观看| 国产精品分类| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 在线成人欧美| 欧美一区二区三区四区在线| 午夜国产精品影院在线观看| 欧美精品国产一区二区| 欧美福利视频| 亚洲国产精品日韩| 久久久久国产精品一区二区| 久久免费一区| 雨宫琴音一区二区在线| 欧美在线一二三区| 欧美在线观看一区二区| 国产视频精品网| 西瓜成人精品人成网站| 久久国产日韩| 影音先锋中文字幕一区二区| 久久久精品一区| 暖暖成人免费视频| 亚洲人线精品午夜| 欧美jizzhd精品欧美喷水| 亚洲第一伊人| 中日韩男男gay无套| 国产精品sss| 亚洲欧美网站| 欧美福利网址| 一本久久知道综合久久| 久久国产精品黑丝| 韩国av一区二区三区四区| 欧美综合国产精品久久丁香| 老司机精品视频一区二区三区| 91久久精品日日躁夜夜躁欧美| 欧美国产激情| 亚洲桃色在线一区| 久久精品国产亚洲a| 亚洲国产精品久久久久久女王| 欧美高清视频在线观看| 亚洲一区二区精品| 牛牛精品成人免费视频| 一本色道久久精品| 国产精品尤物| 欧美国产日本高清在线| 亚洲一区二区三区四区五区午夜| 久久综合九色综合久99| 99精品国产热久久91蜜凸| 国产精品网站一区| 美女露胸一区二区三区| 一区二区欧美日韩视频| 久久综合久久综合这里只有精品| 亚洲免费观看高清完整版在线观看| 国产精品久久久久久模特| 久久亚洲春色中文字幕| 99精品视频免费观看| 女生裸体视频一区二区三区| 亚洲一区二区高清| 在线日韩欧美视频| 国产精品一区毛片| 欧美精品国产精品| 久久综合狠狠综合久久激情| 亚洲欧美成人一区二区三区| 亚洲第一综合天堂另类专| 久久成人免费视频| 亚洲视频你懂的|