92978b58

Приложение CLOCK - 3


MRESULT EXPENTRY WndProc(HWND hWnd, ULONG msg, MPARAM mp1, MPARAM mp2) { HPS hps; RECTL rec; SWP swp; CHAR pszBuf[256]; DATETIME dt;

switch (msg) { case WM_CREATE : { // Запускаем таймер с интервалом 1000 мс WinStartTimer (hab, hWnd, ID_APP_TIMER, 1000);

// Загружаем идентификаторы курсоров мыши hptr = WinLoadPointer(HWND_DESKTOP, NULLHANDLE, ID_APP_POINTER);

hptr1 = WinLoadPointer(HWND_DESKTOP, NULLHANDLE, ID_APP_POINTER1);

return FALSE; }

case WM_DESTROY : { // Останавливаем таймер WinStopTimer (hab, hWnd, ID_APP_TIMER);

// Удаляем курсоры мыши WinDestroyPointer (hptr); WinDestroyPointer (hptr1); return 0; }

// Когда приходит сообщение от таймера, // перерисовываем главное окно приложения case WM_TIMER : { WinInvalidateRect (hWnd, NULL, TRUE); return 0; }

case WM_PAINT : { // Получаем пространство отображения hps = WinBeginPaint (hWnd, NULLHANDLE, &rec);

// Определяем размеры главного окна WinQueryWindow Rect(hWnd, &rec);

// Определяем дату и время DosGetDateTime(&dt);

sprintf (pszBuf, "%02d:%02d:%02d", dt.hours, dt.minutes, dt.seconds);

// Устанавливаем шрифт для отображения SetCourierFont(hps);

// Выводим текст в центре окна WinDrawText (hps, -1, pszBuf, &rec, 0L, 0L, DT_WORDBREAK | DT_CENTER | DT_VCENTER | DT_TEXTATTRS | DT_ERASERECT);

// Восстанавливаем шрифт ResetFont(hps);

// Освобождаем пространство отображения WinEndPaint (hps); return 0; }

case WM_ERASEBACKGROUND : return(MRFROMLONG(1L));

// Когда пользователь нажимает левую клавишу // мыши, запоминаем координаты курсора и // выдвигаем окно приложения на передний план case WM_BUTTON1DOWN : { cxPoint = MOUSEMSG(&msg) -> x; cyPoint = MOUSEMSG(&msg) -> y;

// Изменяем расположение окна по оси Z WinSetWindowPos (hWndFrame, HWND_TOP , 0, 0, 0, 0, SWP _ZORDER );

// Устанавливаем признак перемещения // главного окна приложения fDrag = TRUE;

// Захватываем мышь WinSetCapture (HWND_DESKTOP, hWnd); return 0; }

// При отпускании левой клавиши мыши сбрасываем // признак перемещения окна case WM_BUTTON1UP : { // Сбрасываем признак перемещения // главного окна приложения fDrag = FALSE;




Начало  Назад  Вперед