Win32基礎程式設計 第乙個視窗程式(一)

2021-06-21 03:15:16 字數 2381 閱讀 8897

1.windows程式設計基礎注意:

1) 不要背函式,猜函式是一項技能,理解+猜。windows源**不公開,根據自己掌握的知識推理。

2) 常識性的東西要掌握。

2.簡歷乙個視窗程式:

看一下wincreate.cpp,winmain是入口函式;

編譯鏈結,執行一下,"hello world!"字串不在**中,在資源中;

關閉所有視窗。

3.vc++ 工具

編譯器:c:\program files\microsoft visualstudio\vc98\bin\cl.exe,

將源**編譯成目標**。

鏈結器:c:\program files\microsoft visualstudio\vc98\bin\link.exe,

將目標**、庫和資源鏈結生成最終檔案。

資源編譯器:c:\program files\microsoft visualstudio\common\msdev98\bin\rc.exe,

編譯資源,最終通過鏈結器存入最終檔案。

4.建立視窗:

建立視窗的過程很模組化,想建立乙個視窗,那麼入口函式自然是少不了的。當程式從入口函式進入,我們需要首先在系統中註冊乙個視窗類,然後根據註冊的視窗類,建立乙個視窗。如果僅僅是這樣,windows是不會顯示出視窗的,所以接下來是顯示視窗。此時,如果執行程式,會發現視窗一閃而逝,這是因為winmain函式已經執行了return 0;釋放了所有資源。所以,進行乙個訊息迴圈,來接收並處理來自視窗的各種訊息,就顯得十分重要了。建立視窗可以總結如下:

a.定義winmain函式:程式的入口

b.註冊視窗類

c.建立視窗

d.視窗訊息處理函式

e.顯示視窗

f.進行訊息迴圈

附:win32建立視窗經典**

#include "stdafx.h"

hwnd g_hedit = 0;

hinstance g_hinstance = 0;//接收winmain的引數

//訊息處理函式

//windows 經典機制

lresult callback wndproc(hwnd hwnd,uint nmsg,wparam wparam,lparam lparam)

return defwindowproc(hwnd,nmsg,wparam,lparam);

}//註冊視窗類

bool register (lpstr lpclassname,wndproc wndproc)

; wce.cbsize = sizeof(wce);

wce.cbcl***tra = 200;

wce.cbwndextra = 200;

wce.hbrbackground = (hbrush)(color_window+1);

wce.hcursor = null;

wce.hicon = null;

wce.hiconsm = null;

wce.hinstance = g_hinstance;

wce.lpfnwndproc = wndproc;

wce.lpszclassname = lpclassname;

wce.lpszmenuname = null;

wce.style = cs_hredraw | cs_vredraw;

atom natom = registerclas***(&wce);

//返回0代表註冊失敗

if (natom == 0)

return true;

}//建立主視窗

hwnd createmain(lpstr lpclassname,lpstr lpwndname)

//顯示視窗

void display(hwnd hwnd)

//訊息迴圈

void message()

; while(1)

else

}else

}/******************end*改寫後的訊息迴圈*************************/

}/**************************************** winmain ************************************/

int apientry winmain(hinstance hinstance,

hinstance hprevinstance,

lpstr lpcmdline,

int ncmdshow)

hwnd hwnd = createmain("main","window");

display(hwnd);

// message();

return 0;

}

第乙個Win32程式

第乙個win32視窗.cpp 定義應用程式的入口點。include stdafx.h include 第乙個win32視窗.h include include stdio.h hwnd hwnd pchar szoutbuff lresult callback wndproc hwnd hwnd,u...

建立乙個win32視窗程式

include stdafx.h 2hinstance g hinst null 3 視窗處理函式 lresult callback wndproc hwnd hwnd,視窗控制代碼 uint nmsg,視窗訊息id wparam wparam,訊息傳來的兩個引數 lparam lparam 返回預...

Win32遊戲開發程式 第乙個「遊戲」程式

在中國大學慕課上面看到的一道題目,算得上是入門吧。題目如下 在 helloworldgame 遊戲 的基礎上,試著進行如下的上機練習 能實現至少乙個即可 將文字修改為其他顏色 調整文字的顯示位置 新增滑鼠移動訊息 將輸出文字位置修改為滑鼠位置,讓字串跟隨滑鼠移動 其他任何能增加遊戲性,或你認為必要的...