arrowHome Friday, 10 September 2010  



 
Google
Web winapi.org
Main Menu
Home
News
FAQ
Links
Download
Kontakt
FORUM

Artykuły
Podstawy
GDI i Multimedia
Kontrolki
inne
Winapi + asm
WinSock
Soft
Login Form
Login

Hasło

Zapamiętaj mnie
Nie pamiętasz hasła?
Nie masz konta? Załóż je sobie
Pierwszy program Drukuj E-mail
Oceny: / 191
KiepskiBardzo dobry 
Napisał pinolec   
Thursday, 19 February 2004

W tej lekcji chciałbym przedstawić jak wygląda typowy program napisany w Windows API. Zanim jednak zacznę chciałbym przypomnieć jedynie, że kurs ten jest przeznaczony dla ludzi znających podstawy C/C++. Jeśli nie masz zielonego pojęcia na temat programowania w C, to ten kurs nie jest dobrym pomysłem dla Ciebie. Radzę najpierw zapoznać się z wyżej wymienionym językiem (zajrzyj do linków), a następnie tu wrócić. A oto nasz pierwszy program pod API Windows:



#include <windows.h>

static TCHAR lpszAppName[] = TEXT( "API Windows" );

LRESULT CALLBACK MainWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)

{
switch (uMsg)
{

case WM_CREATE:

break;

case WM_DESTROY:

PostQuitMessage(0);
break;

case WM_KEYDOWN:

break;

default:

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

}
return(0L);
}

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)



MSG msg;
WNDCLASS wndclass;
HWND hWnd; 

wndclass.style = CS_HREDRAW | CS_VREDRAW; 
wndclass.lpfnWndProc = MainWndProc; 
wndclass.cbClsExtra = 0; 
wndclass.cbWndExtra = 0; 
wndclass.hInstance = hInstance; 
wndclass.hIcon = NULL; 
wndclass.hCursor = LoadCursor(NULL, IDC_ARROW); 
wndclass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH); 
wndclass.lpszMenuName = NULL; 
wndclass.lpszClassName = lpszAppName; 

if(RegisterClass(&wndclass) == 0) 

return FALSE; 

hWnd = CreateWindow(lpszAppName, lpszAppName, 
WS_OVERLAPPEDWINDOW | WS_CLIPCHILDREN | WS_CLIPSIBLINGS,
CW_USEDEFAULT, CW_USEDEFAULT,
CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL);
if(hWnd == NULL)
return FALSE;

ShowWindow(hWnd, SW_SHOW);
UpdateWindow(hWnd);

while(GetMessage(&msg, NULL, 0, 0))
{
      TranslateMessage(&msg);
      DispatchMessage(&msg);
}

return msg.wParam;
}


Jeżeli nie wiesz jak to skompilować to przejdź do faq

< Poprzedni   Następny >
Ankieta
Jak ocenisz poziom swoich umiejętnośći?
  
Dodaj do ulubionych
Ustaw stronę startową
Ostatnio dodane
Popularne
 
top

www.winapi.org © 2003 - 2007