WIN32視窗建立

2021-07-30 18:11:12 字數 1565 閱讀 3890

win32視窗建立過程:

1、定義視窗類(在msdn中找到函式原型:winmain())

2、定義視窗處理函式(在msdn中找到原型:windowproc)

3、設計視窗類

4、註冊視窗類(registerclass/registerclas***)

5、建立視窗(createwindow/createwindowex)

6、顯示和更新視窗(showwindow、updatewindow)

7、訊息迴圈

示例**(自己手敲的):

//視窗建立過程:

//1.定義winmain函式

//2.定義視窗處理函式

//3.設計視窗類

//4.註冊視窗

//5.顯示和更新視窗

//6.訊息迴圈

#include hinstance g_instance;

lresult callback mywinproc(hwnd hwnd, uint umsg, wparam wparam, lparam lparam)

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

}void createwin()

; wc.cbcl***tra = 0;

wc.cbsize = sizeof(wc);

wc.cbwndextra = 0;

wc.hbrbackground = (hbrush)color_window;

wc.hcursor = null;

wc.hicon = null;

wc.hiconsm = null;

wc.hinstance = g_instance;

wc.lpfnwndproc = mywinproc;

wc.lpszclassname = __text("mywin");

wc.lpszmenuname = null;

wc.style = cs_hredraw | cs_vredraw;

//註冊視窗類

atom at = registerclas***(&wc);

if (0 == at)

return;

//建立視窗

if (null == hwnd)

return;

//顯示視窗

if (showwindow(hwnd, sw_show))

return;

updatewindow(hwnd);

//訊息迴圈

msg ms = ;

while (getmessage(&ms, null, 0, 0)) }

//利用系統視窗類建立乙個button

void mysyswin()

; while (getmessage(&ms, null, 0, 0)) }

int winapi winmain(hinstance hinstance, hinstance hprevinstance,

lpstr lpcmdline, int ncmdshow)

建立Win32視窗程式

建立win32視窗程式的步驟 建立win32視窗程式 int winapi winmain hinstance hinstance,hinstance hprevinstance,lpstr lpcmdline,int nshowcmd 構造視窗 winmain wndclas wndclass w...

win32開發(建立子視窗)

在win32中,有的時候需要建立額外的子視窗。所謂子視窗的概念,就是視窗本身不會超出母視窗的邊界,所有的操作都是在母視窗裡面完成的。子視窗可以用os提供的預設型別來完成,也可以自定義型別來完成,即自定義wndclas 常用的子視窗有button combobox edit listbox stati...

win32視窗樣式

private const gwl style 16 視窗樣式 private sub command1 click orstyle end sub private sub orstyle dim lstyle as long lstyle getwindowlong me.hwnd,gwl sty...