程序設(shè)計實踐-Windows基礎(chǔ)_第1頁
程序設(shè)計實踐-Windows基礎(chǔ)_第2頁
程序設(shè)計實踐-Windows基礎(chǔ)_第3頁
程序設(shè)計實踐-Windows基礎(chǔ)_第4頁
程序設(shè)計實踐-Windows基礎(chǔ)_第5頁
已閱讀5頁,還剩62頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1程序設(shè)計(chn x sh j)實踐Windows編程基礎(chǔ)知識共六十七頁2內(nèi)容提要(ni rn t yo)1、Windows編程概述2、基本概念3、Windows程序基本結(jié)構(gòu)(jigu)4、程序示例共六十七頁31 Windows編程概述(i sh)Windws編程 在微軟的Windows操作系統(tǒng)下編程使用的工具微軟公司和其他公司(Boland等)在該操作系統(tǒng)下提供了了很多可視化的開發(fā)系統(tǒng)(xtng)平臺,如VC+、VB 、 BC、Delphi等。我們使用VC+共六十七頁41 Windows編程概述(i sh)可視化開發(fā)系統(tǒng)(資源(zyun)和工具的集成)源程序編輯器編譯器調(diào)試工具語法檢查程序

2、修改運行監(jiān)視應(yīng)用程序Help和Setup開發(fā)工具函數(shù)庫和系統(tǒng)函數(shù)開發(fā)工具資源管理器各種窗口和控件的編輯器例程庫及Help其他功能共六十七頁51 Windows編程概述(i sh)一個(y )簡單的Windows程序#include int CALLBACK WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) / 產(chǎn)生一個問候小窗口 MessageBox ( NULL, Hello World!, Say Hello, MB_OK ); return 1;共六十七頁61 Win

3、dows編程概述(i sh)Windows程序特點圖形用戶界面(窗口)統(tǒng)一、友好獨立(dl)于設(shè)備的圖形操作(GUI)支持多任務(wù)機(jī)制(多線程)事件驅(qū)動的程序設(shè)計(消息隊列機(jī)制)程序和資源分開、資源共享支持應(yīng)用程序間的數(shù)據(jù)交換(剪貼板等)共六十七頁71 Windows編程概述(i sh)開發(fā)面向?qū)ο髴?yīng)用程序的方法傳統(tǒng)(chuntng)方法:使用Windows提供的API交互式方法:使用Microsoft提供的MFC類庫API (Application Programming Interface)Windows系統(tǒng)和Windows應(yīng)用程序間的標(biāo)準(zhǔn)程序接口主要分三類:窗口管理函數(shù),圖形設(shè)備函數(shù),系統(tǒng)

4、服務(wù)函數(shù)MFC類庫集成了大量已經(jīng)預(yù)先定義好的類共六十七頁81 Windows編程概述(i sh)基于DOS與基于Windows應(yīng)用程序區(qū)別基于DOS:使用順序(shnx)的過程驅(qū)動方法例:計算平均成績啟動輸入姓名輸入第一次測試成績輸入第二次測試成績輸入第三次測試成績計算平均成績結(jié)束程序能直接控制程序事件或過程的順序共六十七頁91 Windows編程概述(i sh)基于DOS與基于Windows應(yīng)用程序區(qū)別基于Windows:使用(shyng)事件驅(qū)動方法例:計算平均成績程序由事件的發(fā)生來控制啟動消息處理結(jié)束輸入姓名輸入第一次成績輸入第二次成績輸入第三次成績計算平均成績共六十七頁101 Wind

5、ows編程概述(i sh)Windows應(yīng)用程序重要概念(ginin):窗口的概念事件驅(qū)動的概念句柄消息共六十七頁11內(nèi)容提要(ni rn t yo)1、Windows編程概述2、基本概念窗口事件驅(qū)動句柄消息3、Windows程序基本結(jié)構(gòu)(jigu)4、程序示例共六十七頁122 基本概念Windows應(yīng)用程序重要概念(ginin):窗口事件驅(qū)動句柄消息共六十七頁132 基本概念窗口(chungku)窗口(chungku)Windows程序界面的主要組成控制菜單框窗口邊界工作區(qū)下拉菜單水平滾動條垂直滾動條最大化按鈕最小化按鈕標(biāo)題欄共六十七頁142 基本概念窗口(chungku)窗口功能系統(tǒng)對應(yīng)用

6、程序管理的基本單位應(yīng)用程序與用戶之間交互(jioh)的接口環(huán)境Window應(yīng)用程序基本的操作單元Windows應(yīng)用程序編程設(shè)計窗口:WNDCLASS創(chuàng)建窗口:createWindowWindows應(yīng)用程序運行窗口內(nèi)部、窗口與窗口之間、窗口與系統(tǒng)之間進(jìn)行數(shù)據(jù)處理與交換的過程背景顏色、窗口號、光標(biāo)、圖標(biāo)、名字等共六十七頁152 基本概念Windows應(yīng)用程序重要(zhngyo)概念:窗口事件驅(qū)動句柄消息共六十七頁162 基本概念事件驅(qū)動事件系統(tǒng)運行時發(fā)生的事情事件的產(chǎn)生方式通過(tnggu)輸入設(shè)備,如鍵盤和鼠標(biāo);通過屏幕上可視的對象,如菜單、工具欄按鈕、滾動條和對話框上的控件;來自Windows

7、內(nèi)部,如當(dāng)一個后面的窗口顯示到前面來時。事件的結(jié)果系統(tǒng)以消息的形式記錄事件的結(jié)果即消息共六十七頁172 基本概念事件驅(qū)動Windows是基于消息(xio xi)的事件驅(qū)動Windows應(yīng)用程序是按照“事件消息處理”非順序的機(jī)制運行的。例:將消息傳遞給窗口函數(shù)的相應(yīng)過程處理消息隊列Windows將產(chǎn)生的消息WinMain函數(shù)某一事件(shjin)按下鼠標(biāo)共六十七頁182 基本概念Windows應(yīng)用程序重要概念(ginin):窗口事件驅(qū)動句柄消息共六十七頁192 基本概念句柄句柄是整個Windows編程的基礎(chǔ)(jch)句柄的作用:Windows程序中,有各種各樣的資源(窗口、圖標(biāo)、光標(biāo)等),操作系

8、統(tǒng)在創(chuàng)建這些資源時會為它們分配內(nèi)存,并返回標(biāo)識這些資源的標(biāo)識號。操作系統(tǒng)要管理和操作這些資源,都是通過句柄來找到對應(yīng)的資源。按資源的類型,可將句柄分為不同類型句柄是一個4字節(jié)長的數(shù)值用于標(biāo)識應(yīng)用程序中不同的對象和同類對象中不同的實例共六十七頁202 基本概念句柄常用句柄類型HWND窗口句柄HINSTANCE當(dāng)前實例(shl)句柄HCURSOR光標(biāo)句柄HFONT字體句柄HPEN畫筆句柄HBRUSH畫刷句柄HDC設(shè)備環(huán)境句柄HICON圖標(biāo)句柄HMENU菜單句柄HFILE文件句柄 句柄所標(biāo)識對象(duxing)實例窗口按鈕圖標(biāo)滾動條輸出設(shè)備控件文件程序進(jìn)程等等.共六十七頁212 基本概念句柄數(shù)據(jù)類型

9、別名(bimng)int x,y;x=30; y=30; /x和y表示坐標(biāo),寬度和高度等改進(jìn)typedef int WIDTHtypedef int HEIGHTWIDTH x;HEIGHT y;可讀性不好(b ho)共六十七頁222 基本概念句柄數(shù)據(jù)類型別名(bimng)Windows應(yīng)用程序中的數(shù)據(jù)量非常大,為了提高應(yīng)用程序的可讀性,Windows給許多基本數(shù)據(jù)類型定義了別名,例如:typedef void * HANDLE;typedef unsigned long DWORD;typedef int BOOL;typedef unsigned char BYTE;typedef uns

10、igned short WORD;共六十七頁232 基本概念Windows應(yīng)用程序重要概念:窗口(chungku)事件驅(qū)動句柄消息共六十七頁242 基本概念消息(xio xi)消息(xio xi)應(yīng)用程序與系統(tǒng)及其它應(yīng)用程序進(jìn)行信息交換的數(shù)據(jù)結(jié)構(gòu)消息的結(jié)構(gòu)typedef struct tagMSG HWND hwnd; /窗口句柄 UINT message;/消息號(WM_XXX),區(qū)別不同消息的常量 WPARAM wParam; /消息的附加信息 LPARAM lParam; /消息的附加信息 DWORD time; /消息創(chuàng)建的時間 POINT pt; /消息創(chuàng)建時的屏幕光標(biāo)位置MSG;共

11、六十七頁252 基本概念消息(xio xi)消息的分類WM 窗口消息BM 按鈕控制(kngzh)消息CB 組合框控制消息DM 默認(rèn)下壓式按鈕控制消息EM 編輯控制消息LB 列表框控制消息SBM 滾動條控制消息共六十七頁262 基本概念消息(xio xi)常見(chn jin)的消息共六十七頁272 基本概念消息(xio xi)消息隊列Windows為所有(suyu)的應(yīng)用程序維護(hù)一個消息隊列應(yīng)用程序必須從消息隊列中獲取消息,然后分派給某個窗口。消息循環(huán)應(yīng)用程序從消息隊列中檢索消息,再把它分派給適當(dāng)?shù)拇翱?,然后繼續(xù)從消息隊列中檢索下一條消息,再分派給適當(dāng)?shù)拇翱?,依次進(jìn)行。共六十七頁282 基本概

12、念消息(xio xi)窗口過程每個窗口都有一個窗口過程來接收傳遞(chund)給窗口的消息,它的任務(wù)就是獲取消息然后響應(yīng)。窗口過程是一個回調(diào)函數(shù),處理了一個消息后,它通常要返回一個值給Windows。共六十七頁292 基本概念消息(xio xi)消息(xio xi)系統(tǒng)共六十七頁302 基本概念消息(xio xi)消息處理過程(產(chǎn)生-響應(yīng))系統(tǒng)中發(fā)生了某個事件Windows把這個事件翻譯為消息,然后把它放到消息隊列中。應(yīng)用程序從消息隊列中接收到這個消息,把它存放在MSG中。應(yīng)用程序把消息傳遞給一個適當(dāng)?shù)拇翱?chungku)過程。窗口過程響應(yīng)這個消息并進(jìn)行處理。共六十七頁31內(nèi)容提要(ni r

13、n t yo)1、Windows編程概述(i sh)2、基本概念3、Windows程序基本結(jié)構(gòu)程序入口函數(shù)窗口過程函數(shù)4、程序示例共六十七頁323 Windows程序(chngx)基本結(jié)構(gòu)程序入口函數(shù)WinMain函數(shù)原型(yunxng)窗口初始化(1、窗口類定義,2、注冊窗口類,3、創(chuàng)建窗口,4、顯示窗口)消息循環(huán)窗口過程函數(shù)函數(shù)原型消息響應(yīng)1、函數(shù)原型2、窗口初始化3、消息循環(huán)4、窗口過程函數(shù)共六十七頁333 Windows程序(chngx)基本結(jié)構(gòu) WinMain函數(shù)原型WinMain函數(shù)(hnsh)原型int WINAPI WinMain ( HINSTANCE hInstance,

14、/當(dāng)前實例句柄 HINSTANCE hPrevInst, /先前實例句柄 LPSTR lpszCmdLine, /指向應(yīng)用程序命令行參數(shù)的指針 int nCmdShow /初始窗口顯示方式的整數(shù)值標(biāo)識)同一應(yīng)用程序可能同時存在多個窗口,系統(tǒng)對每個窗口的執(zhí)行稱為一個實例,并用一個實例句柄來唯一標(biāo)識共六十七頁343 Windows程序(chngx)基本結(jié)構(gòu)WinMain函數(shù)初始化WinMain函數(shù)初始化窗口類的定義:設(shè)置(shzh)光標(biāo)、圖標(biāo)、背景等注冊窗口類創(chuàng)建窗口顯示和更新窗口共六十七頁353 Windows程序基本(jbn)結(jié)構(gòu) WinMain函數(shù)初始化窗口(chungku)類的定義設(shè)計窗口

15、類typedef struct _WNDCLASS UINT style; /窗口變化時重畫方式 WNDPROClpfnWndProc; /窗口過程類型 int cbClsExtra; /類的附加信息 int cbWndExtra; /窗口附加信息 HANDLE hInstance; /當(dāng)前應(yīng)用程序?qū)嵗?HICON hIcon; /圖標(biāo)句柄 HCURSOR hCursor; /加載的光標(biāo)類型 HBRUSH hbrBackground; /窗口的背景畫刷句柄 LPCTSTR lpszMenuName; /設(shè)置菜單 LPCTSTR lpszClassName; /窗口類名字 WNDCLASS;

16、共六十七頁363 Windows程序(chngx)基本結(jié)構(gòu) WinMain函數(shù)初始化窗口(chungku)類的定義WNDCLASS wintest;wintest.cbClsExtra=0; /類的附加信息,通常為0wintest.cbWndExtra=0; /窗口的附加信息,通常為0wintest.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH);wintest.hCursor=LoadCursor(NULL,IDC_CROSS); /光標(biāo)句柄wintest.hIcon=LoadIcon(NULL,IDI_ERROR); /圖標(biāo)句柄winte

17、st.hInstance=hInstance; /當(dāng)前應(yīng)用程序?qū)嵗杦intest.lpfnWndProc=WndProc; /窗口過程wintest.lpszClassName=“winTest”; /窗口類名字wintest.lpszMenuName=NULL; /菜單名字wintest.style=CS_HREDRAW | CS_VREDRAW; /水平/垂直重畫共六十七頁373 Windows程序基本(jbn)結(jié)構(gòu) WinMain函數(shù)初始化wintest.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH);共六十七頁383 Windows

18、程序基本(jbn)結(jié)構(gòu) WinMain函數(shù)初始化wintest.hCursor=LoadCursor(NULL,IDC_CROSS);共六十七頁393 Windows程序(chngx)基本結(jié)構(gòu) WinMain函數(shù)初始化wintest.hIcon=LoadIcon(NULL,IDI_ERROR);共六十七頁403 Windows程序基本結(jié)構(gòu)(jigu) WinMain函數(shù)初始化注冊(zhc)窗口類:向操作系統(tǒng)注冊(zhc)窗口類型RegisterClass(&wintest);if(!RegisterClass( &wintest)/如果注冊失敗則發(fā)出警告 MessageBeep(0) ; re

19、turn FALSE ;共六十七頁413 Windows程序基本(jbn)結(jié)構(gòu) WinMain函數(shù)初始化創(chuàng)建(chungjin)窗口HWND CreateWindow( LPCTSTR lpszClassName,窗口類名 LPCTSTR lpszTitle, 窗口標(biāo)題名 DWORD dwStyle, 創(chuàng)建窗口的樣式 int x,y, 窗口左上角坐標(biāo) int nWidth,nHeight, 窗口寬度和度高 HWND hwndParent, 該窗口的父窗口句柄 HMENU hMenu, 窗口主菜單句柄 HINSTANCE hInstance, 創(chuàng)建窗口的應(yīng)用程序當(dāng)前句柄 LPVOID lpPar

20、am 指向一個傳遞給窗口的參數(shù)值的指針)共六十七頁423 Windows程序基本(jbn)結(jié)構(gòu) WinMain函數(shù)初始化創(chuàng)建(chungjin)窗口共六十七頁433 Windows程序基本(jbn)結(jié)構(gòu) WinMain函數(shù)初始化創(chuàng)建(chungjin)窗口hwnd=CreateWindow(lpszClassName,/窗口類名 lpszTitle,/窗口實例的標(biāo)題名 WS_OVERLAPPEDWINDOW,/窗口的風(fēng)格 CW_USEDEFAULT, CW_USEDEFAULT,/窗口左上角坐標(biāo)為缺省值 CW_USEDEFAULT, CW_USEDEFAULT,/窗口的高和寬為缺省值 NULL

21、,/此窗口無父窗口 NULL,/此窗口無主菜單 hInstance,/創(chuàng)建此窗口的應(yīng)用程序的當(dāng)前句柄 NULL /不使用該值);#define WS_OVERLAPPEDWINDOW(WS_OVERLAPPED | /產(chǎn)生層疊窗口WS_CAPTION|/創(chuàng)建有標(biāo)題欄窗口WS_SYSMENU| /創(chuàng)建有系統(tǒng)菜單窗口WS_THICKFRAME| /創(chuàng)建邊框可調(diào)窗口WS_MINIMIZEBOX| /創(chuàng)建最小化窗口WS_MAXIMIZEBOX) /創(chuàng)建最大化窗口共六十七頁443 Windows程序(chngx)基本結(jié)構(gòu) WinMain函數(shù)初始化顯示和更新窗口顯示窗口:顯示指定窗口狀態(tài)(zhungti)

22、ShowWindow(hwnd,SW_SHOWNORMAL);更新窗口:刷新并繪制用戶區(qū)窗口UpdateWindow(hwnd);共六十七頁453 Windows程序(chngx)基本結(jié)構(gòu) WinMain函數(shù)消息循環(huán)消息循環(huán)應(yīng)用程序通常有一段代碼稱為消息循環(huán),又稱為消息泵,形式(xngsh)如下MSG msg;/從消息隊列中提取消息while (GetMessage(&msg, NULL, NULL, NULL) TranslateMessage(&msg); /消息解釋,如字符鍵的處理DispatchMessage(&msg); /將消息傳送到指定窗口函數(shù) / 以上出現(xiàn)的函數(shù)都是 Windo

23、ws API 函數(shù)共六十七頁463 Windows程序基本(jbn)結(jié)構(gòu) WinMain函數(shù)消息循環(huán)消息循環(huán)中:函數(shù)GetMessage形式為:GetMessage( lpMSG, /指向MSG結(jié)構(gòu)(jigu)的指針 hwnd, /窗口句柄,NULL表示任何窗口 nMsgFilteMin, /用于消息過濾的最小消息值 nMsgFilterMax /用于消息過濾的最大消息號值 )例:while( GetMessage(&Msg, NULL, 0, 0)表示接收所有消息共六十七頁473 Windows程序基本結(jié)構(gòu) WinMain函數(shù)消息(xio xi)循環(huán)GetMessage返回值BOOL類型(l

24、ixng)若消息隊列中有消息,則返回值總為真。當(dāng)收到WM_QUIT消息,程序結(jié)束,退出循環(huán)MSG msg;/從消息隊列中提取消息while (GetMessage(&msg, NULL, NULL, NULL) TranslateMessage(&msg); /消息解釋,如字符鍵的處理DispatchMessage(&msg); /將消息傳送到指定窗口函數(shù)共六十七頁483 Windows程序基本(jbn)結(jié)構(gòu) WinMain函數(shù)消息循環(huán)TranslateMessage函數(shù)消息解釋、對收到的消息進(jìn)行轉(zhuǎn)換例:WM_KEYDOWN和KEYUP轉(zhuǎn)為WM_CHAR消息DispatchMessage函數(shù)負(fù)

25、責(zé)將消息分發(fā)給窗口過程(guchng)函數(shù)窗口過程函數(shù)賦值對消息進(jìn)行處理共六十七頁493 Windows程序基本結(jié)構(gòu) WinMain函數(shù)(hnsh)消息循環(huán)當(dāng)建立應(yīng)用程序時,操作系統(tǒng)為其分配一個消息隊列,放入消息應(yīng)用程序利用GetMessage從消息隊列中取出具體消息,對其進(jìn)行(jnxng)預(yù)處理(如利用TranslateMessage函數(shù)進(jìn)行消息轉(zhuǎn)換)應(yīng)用程序調(diào)用DispatchMessage,將消息傳給操作系統(tǒng)操作系統(tǒng)利用窗口類中指定的窗口過程函數(shù),對消息進(jìn)行處理消息隊列應(yīng)用程序窗口過程操作系統(tǒng)GetMessageDispatchMessage共六十七頁503 Windows程序(chng

26、x)基本結(jié)構(gòu)程序入口函數(shù)WinMain函數(shù)原型窗口初始化(窗口類定義、注冊窗口類、 創(chuàng)建窗口、顯示窗口)消息循環(huán)窗口過程(guchng)函數(shù)函數(shù)原型消息響應(yīng)共六十七頁513 Windows程序基本結(jié)構(gòu) 窗口(chungku)過程函數(shù)WndProc窗口函數(shù)是程序和用戶交互的主要處理部分WndProc函數(shù)由一個或多個switch語句組成每條case語句對應(yīng)(duyng)一種消息當(dāng)應(yīng)用程序接收到一個消息時,相應(yīng)的case語句被激活并執(zhí)行相應(yīng)的響應(yīng)程序模塊。窗口過程函數(shù)WndProc包含了對各種可能接收到的消息的處理過程定義了應(yīng)用程序?qū)邮盏降牟煌⒌捻憫?yīng)共六十七頁523 Windows程序基本結(jié)構(gòu)

27、(jigu) 窗口過程函數(shù)函數(shù)(hnsh)原型LRESULT CALLBACK WndProc( HWND hwnd, 窗口句柄UINT messgae, 消息代碼WPARAM wParam,消息代碼附加參數(shù)LPARAM lParam,消息代碼附加參數(shù))共六十七頁窗口函數(shù)(hnsh)的一般形式如下:LRESULT CALLBACK WndProc(HWND hwnd,UINT messgae, WPARAM wParam,LPARAM lParam ) switch(message) message為標(biāo)識的消息 case break; case WM_DESTROY: PostQuitMess

28、age(0); default: return DefWindowProc(hwnd,message,wParam,lParam); return(0);在消息處理程序段中一般都有對WM_DESTROY的處理,該消息是關(guān)閉(gunb)窗口時發(fā)出的。它向應(yīng)用程序發(fā)出WM_QUIT消息,請求退出處理函數(shù):void PostQuitMessage(int nExitCode)為未定義處理過程的消息提供缺省處理共六十七頁54內(nèi)容提要(ni rn t yo)1、Windows編程概述2、基本概念3、Windows程序基本(jbn)結(jié)構(gòu)4、程序示例共六十七頁554 程序(chngx)示例基本的WINDOW

29、S應(yīng)用程序例:編寫一個簡單(jindn)的windows程序,只有基本框架代碼,沒有具體功能。共六十七頁564 程序(chngx)示例第一步:建立一個新的工程(1)啟動Visual Studio,選擇菜單項“文件”點擊“新建-項目”,在彈出窗口中項目類型選擇“win32”,繼續(xù)(jx)選擇“win32項目”,為項目起名“Draw”。共六十七頁574 程序(chngx)示例第一步:建立一個新的工程(gngchng)(2)點擊“確定”后,在彈出窗口中進(jìn)行“應(yīng)用程序設(shè)置”,選擇“windows應(yīng)用程序”,選中“空項目”,然后點擊“完成”。共六十七頁584 程序(chngx)示例第二步:設(shè)置(shzh

30、)字符集(1)在生成的解決方案名稱上,單擊鼠標(biāo)右鍵,在彈出的菜單條上,選擇“屬性”共六十七頁594 程序(chngx)示例第二步:設(shè)置字符集(2)在彈出的窗口(chungku)中,選擇“配置屬性”=“常規(guī)”點擊“字符集”右側(cè)下拉框選中“未設(shè)置”然后“確定”。共六十七頁604 程序(chngx)示例第三步:為工程添加源文件/頭文件。包含頭文件:#include #include windows.husing namespace std;添加WinMain函數(shù)(hnsh)和窗口過程函數(shù)(hnsh)共六十七頁614 程序(chngx)示例步驟窗口函數(shù)原型:窗口初始化:窗口類定義:注冊(zhc)窗口類

31、:創(chuàng)建窗口:顯示窗口:更新窗口:消息循環(huán):窗口過程函數(shù)WinMain函數(shù)WNDCLASS wndclass ;wndclass.style=0;RegisterClass函數(shù)CreateWindow函數(shù)ShowWindow函數(shù)UpdateWindow函數(shù)while( GetMessage(&Msg, NULL, 0, 0)LRESULT CALLBACK WndProc函數(shù)共六十七頁4、程序(chngx)示例#include/包含應(yīng)用程序中所需的數(shù)據(jù)類型和數(shù)據(jù)結(jié)構(gòu)的定義LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM); /窗口函數(shù)說明(shum

32、ng)/- 以下初始化窗口類 -int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInst,LPSTR lpszCmdLine,int nCmdShow) HWND hwnd ; MSG Msg ; WNDCLASS wndclass ; char lpszClassName = 窗口;/窗口類名 char lpszTitle= My_Windows;/窗口標(biāo)題名共六十七頁 /窗口(chungku)類的定義wndclass.style=0;/窗口類型為缺省類型wndclass.lpfnWndProc=WndProc;/定義窗口處理函數(shù)

33、wndclass.cbClsExtra=0;/窗口類無擴(kuò)展wndclass.cbWndExtra=0;/窗口實例無擴(kuò)展wndclass.hInstance=hInstance;/當(dāng)前實例句柄wndclass.hIcon=LoadIcon(NULL,IDI_APPLICATION);/窗口的最小化圖標(biāo)為缺省圖標(biāo)wndclass.hCursor=LoadCursor(NULL,IDC_ARROW) ;/窗口采用箭頭光標(biāo)wndclass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);/窗口背景為白色wndclass.lpszMenuName=NULL;/窗口中無菜單wndclass.lpszClassName=lpszClassName ;/窗口類名為窗口共六十七頁 /- 以下進(jìn)行窗口類

溫馨提示

  • 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

提交評論