Professional Documents
Culture Documents
,
++ .
++
Application Programming
). Interface(API
. . ++
*
API
.
* ++
6.0 ++ .
http://go.microsoft.com/?linkid=2676892
:
*
* :
-1 ++
-2 File
-3 New Ctrl+N
-8 Finish
-9 ... Ok
-10
-11
Name main
-12
-13
Ok
#include<windows.h>
LRESULT CALLBACK WndProc(HWND
UINT
WPARAM
LPARAM
{
hWnd,
Msg,
wParam,
lParam)
switch(Msg)
{
case WM_DESTROY:
PostQuitMessage(0);
break;
}
return DefWindowProc(hWnd, Msg, wParam, lParam);
}
INT WINAPI WinMain(HINSTANCE
hInstance,
HINSTANCE
hPrevInstance,
LPSTR
lpCmdLine,
INT
nShowCmd)
{
WNDCLASSEX
wc = {sizeof(WNDCLASSEX),
0,
WndProc,
0, 0,
hInstance,
LoadIcon(NULL, IDI_WINLOGO),
LoadCursor(NULL, IDC_ARROW),
(HBRUSH)(COLOR_WINDOW+2),
NULL,
"ClassName",
NULL};
RegisterClassEx(&wc);
HWND hWnd = CreateWindow("ClassName",
"Chapter 1",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,CW_USEDEFAULT,
640, 480,
NULL,
NULL,
hInstance,
NULL);
ShowWindow(hWnd, nShowCmd);
UpdateWindow(hWnd);
MSG
msg;
while(GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
}
14 F7
15 Ctrl+F5
* .
* :
> #include<windows.h
...
HWND
hWnd
.Handle window
Msg
UINT
int Msg
wParam
.Unsigned
WPARAM 32
case WM_DESTROY:
;) PostQuitMessage(0
.
-
.
*
WinMain
main
Console :
-
hInstance
hPrevInstance
lpCmdLine
HINSTANCE .
LPSTR
HINSTANCE
nShowCmd
INT
* WNDCLASSEX 10 :
- ) sizeof(WNDCLASSEX
WNDLCASSEX .
0 .
- WndProc .
,0 ,0 .
- hInstance .
LoadIcon(NULL, IDI_WINLOGO),
LoadCursor(NULL, IDC_ARRO), .
- ) (HBRUSH)(COLOR_WINDOW+2
.
- NULL NULL
- " "ClassName .
NULL .* wc
RegisterClassEx(&wc);.
* hWnd
CreateWindow 11 :
- " "ClassName .
"1
"Chapter
WS_OVERLAPPEDWINDOW . -
,CW_USEDEFAULT,CW_USEDEFAULT
X )(
Y )( .
- 640
480 .
- NULL,NULL,
hInstance . - NULL .
.
*
))NULL, 0, 0
while(GetMessage(&msg,
;) TranslateMessage(&msg
;) DispatchMessage(&msg .
:
*
hour glass
Cursor
IDC_WAIT
IDC_APPSTARTING
IDC_CROSS
IDC_IBEAM
IDC_NO
IDC_SIZEALL
IDC_SIZENESW
IDC_SIZENESW
...
IDC_SIZENS
IDC_SIZENWSE
IDC_SIZENS
IDC_SIZEWE
IDC_UPARROW
Icon
IDI_APPLICATION
IDI_ASTERISK
IDI_EXCLAMATION
IDI_HAND
IDI_QUESTION
IDI_APPLICATION
IDI_WINLOGO
IDI_ERROR
IDI_INFORMATION
IDI_WARNING
IDI_QUESTION
* ;) (HBRUSH)(COLOR_WINDOW+0 0
25
;)HBRUSH)GetStockObject( WHITE_BRUSH
( WHITE_BRUSH :
Color
BLACK_BRUSH
WHITE_BRUSH
GRAY_BRUSH
LTGRAY_BRUSH
DKGRAY_BRUSH
NULL_BRUSH
* 0
:
Style
CS_HREDRAW
CS_VREDRAW
CS_OWNDC
CS_DBLCLKS
Alt+F4
CS_NOCLOSE
* WS_OVERLAPPEDWINDOW :
Style
WS_CHILDWINDOW
scroll bar
WS_HSCROLL
WS_OVERLAPPEDWINDOW
PopUp
WS_POPUP
WS_VISIBLE
scroll bar
WS_VSCROLL
* CW_USEDEFAULT
.
*
;)ShowWindow(hWnd, nCmdShow
nCmdShow :
nCmdShow
SW_HIDE
SW_MINIMIZE
SW_RESTORE
SW_SHOW
SW_SHOWMAXIMIZED
SW_SHOWMINIMIZED
SW_SHOWNA
SW_SHOWNORMAL
WM_DESTROY :
Window Message
WM_ACTIVATE
WM_CLOSE
WM_CREATE
WM_DESTROY
WM_MOVE
WM_MOUSEMOVE
WM_KEYUP
WM_KEYDOWN
WM_TIMER
WM_USER
WM_PAINT
WM_QUIT
WM_SIZE
:
* .
"."Chapter2
(HBRUSH)(COLOR_WINDOW+2),
2 1
:
case WM_PAINT:
HDC
;hDC
;PAINTSTRUCT PS
;)hDC = BeginPaint(hWnd, &PS
;)))TextOut( hDC, 150, 200, text, (sizeof(text)-1
;)EndPaint(hWnd, &PS
;Break
* F7 Ctrl+F5
;hdc
HDC .
PAINTSTRUCT . BeginPaint
;pstruct
. hWnd
-
;)))TextOut(hdc,0,0,message,(sizeof(message)1
0 X
0
. Y
EndPaint(hWnd, &pstruct); -