Zwraca wartość różną od zera w przypadku sukcesu. W przeciwnym wypadku funkcja zwraca wartość zero.
Funkcja przywraca zminimalizowane okno do jego poprzedniego rozmiaru i położenia, a następnie je uaktywnia.
#include <windows.h>
LRESULT CALLBACK WindowProcedure( HWND, UINT, WPARAM, LPARAM );
char szClassName[] = "WindowsApp";
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstnace, LPSTR lpCmdLine, int nCmdShow )
{
HWND hwnd;
MSG messages;
WNDCLASSEX wincl;
wincl.hInstance = hInstance;
wincl.lpszClassName = szClassName;
wincl.lpfnWndProc = WindowProcedure;
wincl.style = CS_DBLCLKS;
wincl.cbSize = sizeof( WNDCLASSEX );
wincl.hIcon = LoadIcon( NULL, IDI_APPLICATION );
wincl.hIconSm = LoadIcon( NULL, IDI_APPLICATION );
wincl.hCursor = LoadCursor( NULL, IDC_ARROW );
wincl.lpszMenuName = NULL;
wincl.cbClsExtra = 0;
wincl.cbWndExtra = 0;
wincl.hbrBackground =( HBRUSH ) COLOR_BACKGROUND;
if( !RegisterClassEx( & wincl ) )
return 0;
hwnd = CreateWindowEx( 0, szClassName, "Windows App", WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT, 544, 375, HWND_DESKTOP, NULL, hInstance, NULL );
ShowWindow( hwnd, SW_MINIMIZE );
MessageBox( HWND_DESKTOP, "Okno jest zminimalizowane. Po naciśnięciu przycisku OK zostanie wywołana funkcja OpenIcon", "Komunikat", MB_OK );
OpenIcon( hwnd );
MessageBox( HWND_DESKTOP, "Okno zostało zmaksymalizowane przez funkcję OpenIcon", "Komunikat", MB_OK );
while( GetMessage( & messages, NULL, 0, 0 ) )
{
TranslateMessage( & messages );
DispatchMessage( & messages );
}
return messages.wParam;
}
LRESULT CALLBACK WindowProcedure( HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam )
{
switch( message )
{
case WM_DESTROY:
PostQuitMessage( 0 );
break;
default:
return DefWindowProc( hwnd, message, wParam, lParam );
}
return 0;
}