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

[wersja przejrzana][wersja przejrzana]
Usunięta treść Dodana treść
→‎Przykładowa aplikacja Windows działająca zdarzeniowo: bez ukrywania, w tym art. jest już sporo takich listingów
Vebace (dyskusja | edycje)
WP:SK+ToS+mSK, szablon
Linia 1:
{{Dopracować|źródła=2018-04}}
'''Zdarzenie''' ([[język angielski|ang.]] ''event'') – zapis zajścia w systemie komputerowym określonej sytuacji.
 
Linia 39 ⟶ 40:
* WM_QUIT – bezwarunkowe zamknięcie aplikacji (bez pytania jej o zgodę)
* WM_TIMER – system informuje o upływie pewnego czasu (na wcześniejsze żądanie programu)
* WM_QUERYENDSESSION - zapytanie wszystkich aplikacji, czy zgadzają się na zamknięcie sesji systemu operacyjnego.
 
Obsługując zdarzenie aplikacja może zwrócić do nadawcy (systemu lub innego procesu) liczbę, która będzie jakoś zinterpretowana w zależności od rodzaju zdarzenia. Może to być na przykład odpowiedź, czy udało się zainicjować zmienne, albo czy jest zgoda na zamknięcie systemu.
Linia 97 ⟶ 98:
 
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,
Linia 153 ⟶ 154:
 
Opis pól:
* '''what''' - pole opisujące rodzaj zdarzenia, np.
** 0 nullEvent
** 1 mouseDown