亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

初級 WINDOWS API C++語言版 編程(1)

2019-09-06 23:33:35
字體:
來源:轉載
供稿:網友

                    當我們使用著漂亮的界面,方便快捷的應用程序的時候。我們才會發現,以前曾編寫的程序是多么的粗糙(TC編寫的程序)。簡單的界面,16色的顯示系統,大大的落后于計算機的發展。簡單的說就是殺雞用牛刀。如何該改變這種情況呢?Microsoft公司在推出windows操作系統的時候給出了簡單易行的解決方案。這就是WINDOWS平臺API應用程序接口。當然API也是發展的,它從WIN 16 API發展到了現在普遍使用的WIN 32 API。只有充分理解API函數功能和用法,才能深入到WINDOWS系統的內部,才能充分挖掘出操作系統給我們提供的強大功能。現在就讓我們放棄那DOS應用程序,進入WINDOWS編程的海洋之中吧。

要想了解WINDOWS API那么我們必須先了解WINDOWS下的程序是如何進行驅動的。同學們可以很清楚的發現到,當你在使用WINDOWS記事本的時候,當鍵盤輸入字符的時候字就會出現在屏幕上。當你移動鼠標的時候,光標就會在屏幕上移動。雙擊鼠標、單擊鼠標就會有相應的事件發生。這些都是由于WINDOWS具有的事件驅動的屬性造成的。比如說當你按下鍵盤的字符鍵的時候,消息隊列就會向程序發送WM_CHAR的消息,如果你所寫的程序中含有處理這個消息的函數,程序就會執行它。

為了更好的了解WINDOWS編程,這里我必須介紹幾個基本的概念:
1,句柄:它是WINDOWS編程的基礎。一個句柄是指WINDOWS在內存中使用的一個唯一的整數質,是一個4個字節長的數值,用于標識應用程序中不同對象和相同對象的不同實例。

這里我列出幾種WINDOWS常用的句柄:

HWND: 標示窗口句柄
HINSTANCE:標示當前實例句柄
HCOURSOR:標示光標句柄
HFONT: 標示字體句柄
HPEN:標示畫筆句柄
HBRUSH:標示畫刷句柄
HDC:標示設備環境句柄
HBITMP:標示位圖句柄
HICON:標示圖標句柄
HMENU:標示菜單句柄
HFILE:標示文件句柄

由于WINDOWS應用程序利用WINDOWS消息來與其它的WINDOWS應用程序及WINDOWS系統進行消息交換。所以消息是一個十分重要的對象它的結構如下。

typedef struct{
 HWND hwnd;     //檢索消息的窗口句柄
 UNIT message;  //代表一個消息的消息質
 WPARAM wParam; //消息附加信息的字參數
 LPARAM lParam; //消息附加信息的長字參數
 DWORD time;    //消息入隊時間
 POINT pt;      //消息發送時鼠標的位置 point.x;point.y;
} tagMSG;

2,消息:VC++中消息都用前綴標示消息所屬的分類,下面我來介紹一下這些前綴

BM表示按鈕控制消息
CB表示組合框控制消息
DM表示默認下壓式按鈕控制消息
EM表示編輯控制消息
LB表示列表框控制消息
SBM表示滾動條控制消息
WM表示窗口消息

現在我來對系統常用的一些消息進行說明:
1,WM_LBUTTONDOWN: 單擊鼠標左鍵時產生
2,WM_LBUTTONUP: 放開鼠標左鍵時產生
3,WM_RBUTTONUP: 放開鼠標右鍵時產生
4,WM_LBUTTONBLCLK: 雙擊鼠標左鍵時產生
5,WM_RBUTTONBLCLK: 雙擊鼠標右鍵時產生
6,WM_KEYDOWN: 按下了一個非系統鍵時產生的消息
7,WM_CHAR: 同上
8,WM_CREATE: 由CreateWindow函數發出的消息
9,WM_DESTROY: 消除窗口時發出的消息
10,WM_QUIT: 退出程序時發送的消息
11,WM_PAINT: 做任何移動操作時發出的消息

介紹了以上的這些基礎入門知識,我們就可以簡單的了解一下WINDOWS API 程序的組成基本結構。它是由入口函數WinMain和窗口函數基本框架,并包含各種數據類型、數據結構與函數等應用組建組成的。其中入口函數WinMain和窗口函數是WINDOWS應用程序的主體。

一個基本的WinMain函數應該具有以下的功能:
1,注冊窗口類,建立窗口及執行其他必要的初始化工作
2,進入消息循環,根據從應用程序消息隊列接受的消息,調用相應的處理過程。
3,當消息循環檢索到WM_QUIT消息時中止程序運行
WinMain函數有三個基本組成部分:函數說明、初始化和消息循環。

(1)函數說明

int WINAPI WinMain
(
HINSTANCE hThisInst, //應用程序當前實例句柄
HINSTANCE hPrevInst, //應用程序其它實例句柄
LPSTR lpszCmdLine,   //指向程序命令行參數的指針
int nCmdShow/t //應用程序開始執行時窗口顯示方式的整數值標示
)

(2)初始化
初始化包括窗口類的定義、注冊、創建窗口實例和顯示窗口四部分。(在以后的程序中我將詳細的介紹它們具體的實現方法)

(3)消息循環
WINDOWS應用程序的運行是以消息為核心的。WINDOWS將產生的消息放入應用程序的消息隊列中,而應用程序的WinMain函數從消息循環提取隊列中的消息,并將其傳遞給窗口函數的相應過程處理。

它的基本寫法如下:

MSG Meg;//定義消息
//(...)省略了一些內容
while (GetMessage(&Meg,NULL,0,0)
{
 TranslanteMessage(&Meg);
 DispatchMessage(&Meg);
}

本章完成(下一章我將向大家介紹窗口函數,并教大家實現自己的第一個WINDOWS API 程序)

本人水平有限請大家見諒。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩欧美在线字幕| 日韩视频第一页| 91视频国产高清| 亚洲a区在线视频| 亚洲精品动漫100p| 亚洲国产中文字幕久久网| 国产91九色视频| 亚洲最大福利网站| 欧美中文字幕在线播放| 国产午夜精品理论片a级探花| 国产成人精品在线观看| 亚洲欧美中文字幕在线一区| 欧美成人午夜影院| 国产偷国产偷亚洲清高网站| 亚洲天堂网站在线观看视频| 亚洲欧洲成视频免费观看| 668精品在线视频| 国产欧美日韩高清| 搡老女人一区二区三区视频tv| 久久精品一区中文字幕| 欧美亚洲一区在线| 久久精品国产69国产精品亚洲| 91超碰中文字幕久久精品| 午夜精品在线视频| 精品在线欧美视频| 国产亚洲精品日韩| 国产成人精品免高潮费视频| 成人中文字幕+乱码+中文字幕| 久久久999精品免费| 久久精品成人动漫| 尤物yw午夜国产精品视频| 91精品国产成人www| 久久综合九色九九| 久久91精品国产91久久跳| 欧美视频在线观看 亚洲欧| 97在线精品国自产拍中文| 亚洲tv在线观看| 亚洲剧情一区二区| 不卡伊人av在线播放| 精品毛片三在线观看| 亚洲精品suv精品一区二区| 日韩免费观看视频| 91chinesevideo永久地址| 欧美高清videos高潮hd| 日韩hd视频在线观看| 久久久国产精彩视频美女艺术照福利| 欧美高清视频免费观看| 国产一区二区三区欧美| 欧美日韩中国免费专区在线看| 亚洲精品电影久久久| 欧美日韩福利在线观看| 亚洲视频专区在线| 国产成人精品国内自产拍免费看| 久久精品国产2020观看福利| 国内揄拍国内精品| 久久综合色影院| 亚洲精品小视频在线观看| 亚洲高清一区二| 久久综合国产精品台湾中文娱乐网| 久久亚洲影音av资源网| 成人国内精品久久久久一区| 欧美日韩精品国产| 欧美精品videossex性护士| 久久99久国产精品黄毛片入口| 亚洲区中文字幕| 亚洲91精品在线| 欧美中文字幕精品| 亚洲第一级黄色片| 日韩a**站在线观看| 国产成人午夜视频网址| 日韩av在线精品| 91在线免费视频| 米奇精品一区二区三区在线观看| 国产成人av在线播放| 国产精品久久久久久久app| 在线精品国产欧美| 国产男女猛烈无遮挡91| 亚洲国产成人久久综合一区| 欧美成人精品h版在线观看| 在线成人一区二区| 欧洲美女免费图片一区| 最近日韩中文字幕中文| 亚洲欧洲国产精品| 亚洲欧美中文日韩在线v日本| 久久久久亚洲精品成人网小说| 欧美精品九九久久| 国产精品视频资源| 国产欧美日韩免费| 狠狠躁18三区二区一区| 精品国产欧美一区二区五十路| 91国产中文字幕| 精品国产成人在线| 成人午夜一级二级三级| 91国产美女在线观看| www.日韩欧美| 国产日韩欧美视频在线| 亚洲香蕉成视频在线观看| 国产欧美 在线欧美| 亚洲日韩中文字幕在线播放| 日韩经典中文字幕在线观看| 一级做a爰片久久毛片美女图片| 日韩av免费在线播放| 成人av.网址在线网站| 亚洲国产精品va在线| 欧美精品福利视频| 成人免费看片视频| 欧美日韩免费看| 高清在线视频日韩欧美| 日韩精品视频免费专区在线播放| 色噜噜狠狠狠综合曰曰曰88av| 国产成人精品网站| 亚洲最大福利网站| 久久精品99久久香蕉国产色戒| 国产精品夜色7777狼人| 精品调教chinesegay| 九九精品视频在线| 成人疯狂猛交xxx| 亚洲天堂av在线免费观看| 亚洲人成电影网站色…| 国产成人精品免高潮费视频| 久久亚洲精品网站| 久久精品国产v日韩v亚洲| 欧美精品亚州精品| 午夜精品在线视频| 色综合色综合网色综合| 97精品在线观看| 亚洲午夜久久久影院| 国产精品91一区| 精品久久久久久久久久久久久| 成人午夜在线视频一区| 国产91对白在线播放| 波霸ol色综合久久| 欧美日本啪啪无遮挡网站| 久久久久www| 中文字幕亚洲欧美在线| 亚洲精品中文字幕有码专区| 在线观看精品自拍私拍| 国产成人精品视频在线观看| 欧美激情免费看| 亚洲美女中文字幕| 欧美一级片一区| 国产亚洲精品美女| 欧美激情一区二区三级高清视频| 亚洲欧美国产精品专区久久| 亚洲理论片在线观看| 成人午夜激情免费视频| 日韩福利视频在线观看| 国产日韩在线一区| 色无极影院亚洲| 久久久久久有精品国产| 欧洲亚洲妇女av| 欧美专区在线观看| 久久精品色欧美aⅴ一区二区| 精品五月天久久| 在线精品国产成人综合| 国产精品久久久| 成人精品久久一区二区三区| 欧美日韩激情视频| 国产成人在线一区二区| 国产精品久久久久久亚洲影视| 国产精品av在线播放| 91福利视频网| 91精品国产精品| 57pao成人永久免费视频|