|
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
ДОНЕЦЬКИЙ НАЦІОНАЛЬНИЙ ТЕХНІЧНИЙ УНІВЕРСИТЕТ
Лабораторная работа № 1
ПО ДИСЦИПЛИНЕ:
" ПРОГРАММИРОВАНИЕ ПОД WINDOWS "
Тема: Создание и изучение окна
Выполнил:
Студент группы КСоз-11
Внуков А.С.
Проверил:
Теплинский С.В.
ДонНТУ
2012 г.
Вариант 4.
Системный цвет для закраски фона: COLOR_INACTIVEBORDER
Стиль окна: WS_POPUPWINDOW
Стиль класса: CS_VREDRAW
Системная иконка: IDI_WINLOGO
Вид отображения окна: SW_SHOWNORMAL
Формат вывода текста: DT_NOCLIP
Системный курсор: IDC_APPSTARTING
Кисть для закраски фона: BLACK_BRUSH
Листинг программы:
#include <windows.h>
LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM);
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
PSTR szCmdLine, int iCmdShow)
{
static char szAppName[] = "HelloWin";
HWND hwnd;
MSG msg;
WNDCLASSEX wndclass;
wndclass.cbSize = sizeof (wndclass);
wndclass.style = CS_VREDRAW; //СТИЛЬ КЛАССА ОКНА
wndclass.lpfnWndProc = WndProc;
wndclass.cbClsExtra = 0;
wndclass.cbWndExtra = 0;
wndclass.hInstance = hInstance;
wndclass.hIcon = LoadIcon (NULL, IDI_WINLOGO); //ИКОНКА
wndclass.hCursor = LoadCursor (NULL, IDC_APPSTARTING); //КУРСОР
wndclass.hbrBackground = (HBRUSH)COLOR_INACTIVEBORDER; GetStockObject (BLACK_BRUSH);//КИСТЬ ДЛЯ ЗАКРАСКИ ФОНА
wndclass.lpszMenuName = NULL;
wndclass.lpszClassName = szAppName;
wndclass.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
RegisterClassEx (&wndclass);
hwnd = CreateWindow (szAppName, // window class name
"The Hello Program", // window caption
WS_POPUPWINDOW, // window style
CW_USEDEFAULT, // initial x position
CW_USEDEFAULT, // initial y position
CW_USEDEFAULT, // initial x size
CW_USEDEFAULT, // initial y size
NULL, // parent window handle
NULL, // window menu handle
hInstance, // program instance handle
NULL); // creation parameters
ShowWindow (hwnd, SW_SHOWNORMAL);// ВИД ОТОБРАЖЕНИЯ ОКНА
UpdateWindow (hwnd);
while (GetMessage (&msg, NULL, 0, 0))
{
TranslateMessage (&msg);
DispatchMessage (&msg);
}
return msg.wParam;
}
LRESULT CALLBACK WndProc (HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam)
{
HDC hdc;
PAINTSTRUCT ps;
RECT rect;
switch (iMsg)
{
case WM_CREATE:
return 0;
case WM_PAINT:
hdc = BeginPaint (hwnd, &ps);
GetClientRect (hwnd, &rect);
DrawText (hdc, "Hello, Windows 95!", -1, &rect,
DT_NOCLIP);
EndPaint (hwnd, &ps);
return 0;
case WM_DESTROY:
PostQuitMessage (0);
return 0;
}
return DefWindowProc (hwnd, iMsg, wParam, lParam);
}
Результат:
Без введения параметра Вид отображения окна:
С введением параметра Вид отображения окна, программа сворачивается в трей и открыть её уже не представляется возможным:
Дата добавления: 2015-08-29; просмотров: 23 | Нарушение авторских прав
<== предыдущая лекция | | | следующая лекция ==> |
Хронология трёх последних дней и ночей господа по писанию: | | | 1. Перечислите основные виды деформаций и кратко поясните их сущность; |