You are on page 1of 17

:

,
++ .
++
Application Programming
). Interface(API


. . ++


*
API
.
* ++

6.0 ++ .

Visual C++ Express Edition Beta 2


http://go.microsoft.com/?linkid=2676892

:
*

* :

-1 ++

-2 File

-3 New Ctrl+N

-4 Project Win32 Application

-5 Project Name Chapter


1
-6 Ok

-7 Win32 application step 1


of 1 An Empty Project

-8 Finish

-9 ... Ok

-10
-11

File -> New

Files c++ source file file

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
...

LRESULT CALLBACK WndProc(HWND hWnd, UINT Msg,

)WPARAM wParam, lPARAM lParam

HWND

hWnd

.Handle window

Msg

UINT

int Msg

wParam

.Unsigned

WPARAM 32

... lPARAM lParam


.

case WM_DESTROY:

;) PostQuitMessage(0
.
-

;)return DefWindowProc(hWnd, Msg, wParam, lParam

.
*

WinMain

main

Console :
-

hInstance

hPrevInstance
lpCmdLine

HINSTANCE .

LPSTR

Long Point STRing

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 .

* ;) ShowWindow(hWnd, nShowCmd ;) UpdateWindow(hWnd

.
*

))NULL, 0, 0

while(GetMessage(&msg,

;) TranslateMessage(&msg

;) DispatchMessage(&msg .

:
*

;) .LoadCursor( NULL, IDC_ARROW



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

;) LoadIcon( NULL, IDI_APPLICATION

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

char text[] = "The Beginner In Programming On System


;"Window

:
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

;)= BeginPaint(hWnd, &PS

hDC hDC BeginPaint

. hWnd
-

;)))TextOut(hdc,0,0,message,(sizeof(message)1

0 X
0

. Y

EndPaint(hWnd, &pstruct); -

You might also like