Zdarzenie (informatyka): Różnice pomiędzy wersjami

[wersja przejrzana][wersja przejrzana]
Usunięta treść Dodana treść
Addbot (dyskusja | edycje)
m Bot: Przenoszę linki interwiki (1) do Wikidata, są teraz dostępne do edycji na d:q3291944
Linia 69:
==== Przykładowa aplikacja Windows działająca zdarzeniowo ====
Ze względu na spory rozmiar ten przykład pokaże się dopiero po kliknięciu na słowie [Pokaż] z prawej strony.
{{Ukryj
{{Przykładowy kod aplikacji zdarzeniowej}}
|tytuł = Przykładowa [[aplikacja (informatyka)|aplikacja]] [[Microsoft Windows|Windows]] działająca [[zdarzenie (informatyka)|zdarzeniowo]]'''
|zawartość =
<table><tr><td align="left">
<pre>
#include <windows.h>
 
static TCHAR lpszAppName[] = TEXT( "API Windows" );
 
LRESULT CALLBACK MainWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
 
{
//reakcje na poszczególne zdarzenia wysyłane przez użytkownika
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;
 
//definicja okna
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;
 
//pokazanie okna
ShowWindow(hWnd, SW_SHOW);
UpdateWindow(hWnd);
 
//pętla oczekująca na przychodzące zdarzenia
while(GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
 
return msg.wParam;
}
</pre></td></tr></table>
}}
 
 
=== Zdarzenia w systemie Mac OS ===