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

首頁 > 學院 > 開發設計 > 正文

Visual C++ 入門精解-第三部分

2019-11-17 05:27:03
字體:
來源:轉載
供稿:網友
Windows應用程序的基本運行機制與HelloWin程序詳解總的來說最基本的Windows應用程序的運行執行順序總是以如下的基本順序執行的。順序結構:調用WinMain函數開始執行--à定義窗口類--à初始化窗口類--à窗口的實例化--à通過消息循環獲取消息并將消息發送給消息處理函數做出相應的操作由于windows應用程序運行的邏輯結構非凡所以代碼的具體解釋筆者就不把程序于敘述分開了了,這樣有利于閱讀與分析。分析代碼如下://程序作者:管寧
//站點:www.cndev-lab.com
//所有稿件均有版權,如要轉載,請務必注明出處和作者 #include <windows.h>#PRagma comment(lib,"winmm.lib")//為了要播放聲音,必須導入這個庫LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM);int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,PSTR szCmdLine, int iCmdShow)/* HINSTANCE 類型的含義為實例句柄。 hInstance 事實上就是當前應用程序自身的標識代號,代號通常都是一個32位整數。 hPrevInstance 與過去的16位應用程序有關系,表示指向前一個實例的句柄。 PSTR 類型的含義是指向以/0結尾的字符串指針。 szCmdLine 前面的sz同樣是表示指向以/0結尾的字符串指針,這個對象用于保存命令行。 最后iCmdShow是一個整型數據,標記了程序最初的顯示狀態。 為SW_SHOWNORAML的時候為一般大小顯示方式。 為SW_SHOWMAXIMIZED的時候為最大化顯示方式。 為SW_SHOWMINNOACTIVE的時候程序將顯示在任務欄上。*/{ static char szAppName[] = TEXT("HelloWin");//預先定義一個c風格字符串,稍后用于設置窗口類名稱。 WNDCLASS wndclass;//定義窗口類對象/* 在這里不得不說一下的是,窗口類事實上是strUCt結構體,內部有10個分量,他們是用來于初始化窗口類對象而用的。 這個結構體在winuser.h頭文件中定義,從方式上來說,分為ASCII版的WNDCLASSA和Unicode版的WNDCLASSW兩個。
typedef struct tagWNDCLASSA { UINT  style; WNDPROC lpfnWndProc; int   cbClsExtra; int   cbWndExtra; HINSTANCE  hInstance; HICON  hIcon; HCURSOR hCursor; HBRUSH  hbrBackground; LPCSTR  lpszMenuName; LPCSTR  lpszClassName; } WNDCLASSA, *PWNDCLASSA, NEAR *NPWNDCLASSA, FAR *LPWNDCLASSA; typedef struct tagWNDCLASSW { UINT   style; WNDPROC  lpfnWndProc; int   cbClsExtra; int   cbWndExtra; HINSTANCE hInstance; HICON  hIcon; HCURSOR hCursor; HBRUSH hbrBackground; LPCWSTR lpszMenuName; LPCWSTR lpszClassName; } WNDCLASSW, *PWNDCLASSW, NEAR *NPWNDCLASSW, FAR *LPWNDCLASSW;
*/ //------------------------------- 窗口類對象初始化過程 ------------------------------------ wndclass.style = CS_HREDRAW CS_VREDRAW; /* 設置窗口類對象的樣式風格,CS_HREDRAW CS_VREDRAW這兩個值是通過位運算的與運算結合起來的。 表示了窗口在改變了水平和垂直大小的時候,窗口要強迫刷新。 這些通過define定義的標識,可以在WinUser.h頭文件中找到。 #define CS_VREDRAW 0x0001 #define CS_HREDRAW 0x0002 #define CS_DBLCLKS 0x0008 #define CS_OWNDC 0x0020 #define CS_CLASSDC 0x0040 #define CS_PARENTDC   0x0080 #define CS_NOCLOSE   0x0200 #define CS_SAVEBITS 0x0800 #define CS_BYTEALIGNCLIENT 0x1000 #define CS_BYTEALIGNWINDOW 0x2000 #define CS_GLOBALCLASS  0x4000 #define CS_IME    0x00010000 */ wndclass.lpfnWndProc = WndProc ;//指定窗口的處理函數為WndProc,WndProc將處理windows消息。 wndclass.cbClsExtra = 0;//窗口類無擴展
wndclass.cbWndExtra = 0;//窗口實例無擴展 wndclass.hInstance = hInstance;//指定當前應用程序實例句柄,也就是程序當前的標識號。 wndclass.hIcon = LoadIcon (NULL,IDI_application); /* 通過LoadIcon函數設置應用程序窗口標題的icon圖標。 HICON LoadIcon(HINSTANCE hInstance,LPCTSTR lpIconName); 函數返回HICON類型的圖標句柄。 第一個參數表示當前應用程序的窗口句柄,第二個參數表示圖標。 默認狀態下,第一個參數為NULL,第二個為IDI_APPLICATION,表示使用系統默認提供的圖標,可以在WinUser.h頭文件中找到。 #define IDI_APPLICATION 32512 */ wndclass.hCursor = LoadCursor (NULL, IDC_ARROW) ; /* 通過LoadCursor函數設置應用程序窗口光標樣式。 HCURSOR LoadCursor(HINSTANCE hInstance,LPCTSTR lpCursorName); 函數返回HCURSOR類型的光標句柄。 第一個參數表示當前應用程序的窗口句柄,第二個參數表示光標。 默認狀態下,第一個參數為NULL,第二個為IDC_ARROW,表示使用系統默認提供的光標,可以在WinUser.h頭文件中找到。 #define IDC_ARROW MAKEINTRESOURCE(32512) */ wndclass.hbrBackground = (HBRUSH)GetStockObject (WHITE_BRUSH); /* 通過GetStockObject函數設置應用程序窗口的背景顏色。 HGDIOBJ GetStockObject(int fnObject); 函數返回HCURSOR類型的GDI對象句柄,為了程序能夠正確執行,必須把HGDIOBJ類型強制轉換成HBRUSH畫刷句柄。
參數表示當前使用的畫刷顏色。 這些常量的定義可以在WinGDI.h頭文件中找到。 #define WHITE_BRUSH 0 #define LTGRAY_BRUSH 1 #define GRAY_BRUSH 2 #define DKGRAY_BRUSH 3 #define BLACK_BRUSH 4 #define NULL_BRUSH 5 #define HOLLOW_BRUSH NULL_BRUSH */ wndclass.lpszMenuName = NULL; wndclass.lpszClassName = szAppName;//窗口類對象的名稱//----------------------------------------------------------------------------------------- RegisterClass (&wndclass); /* 注冊窗口類,參數為窗口類對象的指針。 函數原形為: ATOM RegisterClass(CONST WNDCLASS *lpWndClass); */ //-------------------------- 實例化過程 ------------------------------------------------- HWND hwnd ; //創建用于保存窗口句柄的對象,窗口句柄是系統識別不同窗口的依據,它只是個代號。 hwnd = CreateWindow( szAppName, // 窗口類名稱 "你好世界", // 窗口標題
WS_OVERLAPPEDWINDOW, // 窗口樣式 CW_USEDEFAULT, // 初始的窗口x軸位置 CW_USEDEFAULT, // 初始的窗口y軸位置 CW_USEDEFAULT, // 初始的窗口x軸大小 CW_USEDEFAULT, // 初始的窗口y軸大小 NULL, // 父窗口句柄 NULL, // 窗口功能表句柄 hInstance, // 應用程序實例句柄 NULL // 建立參數,這個參數可以存取后面程序中可能引用到的資料。 ); /* 在窗口類對象的初始化過程中,我們定義了窗口的一些簡單一般特征,比如背景顏色呀,光標呀,等等。。。 但是在利用CreateWindow創建窗口的時候可以設置更多的細節,比如窗口標題這些。 函數原形如下: HWND CreateWindow( LPCTSTR lpClassName, LPCTSTR lpWindowName,
DWord dwStyle, int x, int y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam );

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美性受xxx| 亚洲国产精品久久久久秋霞不卡| 亚洲激情在线观看视频免费| 成人激情在线播放| 亚洲成人在线网| 欧美怡红院视频一区二区三区| 精品福利在线观看| 欧美电影在线免费观看网站| 一区二区三区视频观看| 欧美乱大交做爰xxxⅹ性3| 亚洲无亚洲人成网站77777| 亚洲第一色在线| 亚洲免费av片| 91网站免费观看| 亚洲aⅴ男人的天堂在线观看| 欧美激情视频给我| 中文字幕精品久久| 亚洲在线观看视频| 欧美国产第二页| 7m第一福利500精品视频| 久久久女女女女999久久| 亚洲电影第1页| 欧美大片免费观看在线观看网站推荐| 日韩美女视频中文字幕| 亚洲第一精品电影| 亚洲黄色成人网| 精品女同一区二区三区在线播放| 国产精品亚洲自拍| 亚洲天堂免费观看| 91国产精品视频在线| 97色在线观看| 亚洲一区二区福利| 国产日韩精品综合网站| 中文字幕国产亚洲2019| 亚洲性猛交xxxxwww| 欧美一级电影免费在线观看| 久久亚洲精品毛片| 欧美第一黄网免费网站| 亚洲综合小说区| 中文字幕久热精品视频在线| 国产精品免费一区豆花| 国产一区二区色| 国产欧美精品一区二区三区介绍| 亚洲天堂久久av| 国产欧美欧洲在线观看| 国产精品久久久久7777婷婷| 日本精品一区二区三区在线| 国产一区av在线| 亚洲美女免费精品视频在线观看| 国产成人亚洲精品| 亚洲一区二区三区乱码aⅴ| 中文字幕精品—区二区| 91精品国产综合久久久久久蜜臀| 成人h视频在线观看播放| 久久人人爽国产| 国产精品爽爽爽爽爽爽在线观看| 国产精品都在这里| 性亚洲最疯狂xxxx高清| 久久黄色av网站| 96国产粉嫩美女| 日韩毛片在线看| 欧美尺度大的性做爰视频| 7m第一福利500精品视频| 91精品免费久久久久久久久| 亚洲第一区中文字幕| 久久99精品久久久久久琪琪| 国产精品成人免费电影| 81精品国产乱码久久久久久| 日韩成人在线播放| 欧美在线视频观看免费网站| 国产精品老牛影院在线观看| 亚洲大胆美女视频| 亚洲欧美日韩中文视频| 亚洲人高潮女人毛茸茸| 97久久久久久| 日本久久久久久| 国产精品自拍小视频| 久久久久国产精品一区| 欧美成人一区二区三区电影| 精品视频偷偷看在线观看| 91免费在线视频| 亚洲free性xxxx护士白浆| 国产亚洲xxx| 91视频国产一区| 国产精品96久久久久久| 国模叶桐国产精品一区| 日韩一二三在线视频播| 亚洲www在线观看| 欧美成人精品激情在线观看| 国产精品扒开腿爽爽爽视频| 国产精品久久久久999| 九九热精品在线| 亚洲成人激情图| 亚洲欧美国产一区二区三区| 欧美成人h版在线观看| 国产午夜精品理论片a级探花| 色婷婷综合久久久久| 国产不卡av在线| 亚洲午夜精品久久久久久久久久久久| 欧美中文字幕视频| 国产精品视频导航| 亚洲国产精品久久久久秋霞不卡| 日韩av在线高清| 91在线观看免费| 欧美日韩亚洲一区二区三区| 欧美国产视频日韩| 一区二区三区久久精品| 91久久夜色精品国产网站| 欧美日韩亚洲一区二区三区| 日韩av免费看网站| 欧美电影院免费观看| 欧美激情xxxx性bbbb| 久久久免费精品视频| 深夜福利国产精品| 美女精品视频一区| 亚洲区一区二区| 国产精品第七影院| 亚洲aⅴ日韩av电影在线观看| 久久99视频免费| 欧美电影院免费观看| 国产一区二区三区在线观看网站| 国产综合在线观看视频| 亚洲字幕在线观看| 欧美性69xxxx肥| 国产主播精品在线| 不卡av电影院| 欧美视频中文字幕在线| 亚洲男人天堂2024| 日韩精品在线观看视频| 欧美理论电影在线观看| 国产一区二区欧美日韩| 91中文精品字幕在线视频| 久久精品电影一区二区| 亚洲欧美在线一区二区| 国产成人拍精品视频午夜网站| 欧美日韩性生活视频| 国产精品久久久一区| 在线日韩中文字幕| 青青草原一区二区| 欧美大尺度激情区在线播放| 91久久综合亚洲鲁鲁五月天| 69久久夜色精品国产69| 日韩电影免费在线观看中文字幕| 国产亚洲精品日韩| 欧美另类老女人| 日韩精品中文在线观看| 欧美风情在线观看| 91超碰中文字幕久久精品| 色噜噜狠狠狠综合曰曰曰| 国内精品模特av私拍在线观看| 国产成人精品久久| 亚洲精品一区久久久久久| 国产精欧美一区二区三区| 91精品国产成人www| 一区二区三区国产视频| 2019最新中文字幕| 国语自产精品视频在线看抢先版图片| 久久久成人精品| 亚洲毛片一区二区| 欧美限制级电影在线观看| 91九色综合久久| 亚洲成人激情图| 一本大道亚洲视频| www国产亚洲精品久久网站|