ALTE DOCUMENTE
|
||||||||
Последним &# 525p154f 1089;ообщением, которое мы обсудим в этой главе, будет WM TIMER Windows WM TIMER
API SetTimer()
UINT SetTimer(HWND hwnd, UINT nID, UINT wLength,
TIMEPROC lpTFunc
hwnd nID wLength lpTFunc VOID CALLBACK lpTFunc NULL WM TIMER SetTimer nID
API KillTimer
BOOL KillTimer HWND hwnd UINT nID
hwnd nID
WM TIMER wParam a lParam IParam NULL
tm
struct tm newtime
newtime
t time t
time t t
time NULL time t
t time NULL
tm newtime localtime
newtime localtime(&t
localtime t time t
tm strcpy asctime
strcpy str asctime newtime
Windows r n Эти символы желательно удалить, поставив в конце информации обычный символ «конец строки»:
str[strlen(str)-1] = '\0'
. Приведенная ниже программа использует таймер для создания часов. Для получения текущей даты и времени она вызывает стандартные функции «C» или «C++». Каждый раз при получении сообщения таймера - примерно раз в секунду - изображение, отображающее время, обновляется. Таким образом, время указывается с точностью до одной секунды.
#include <Windows.h>
#include <String.h>
#include <Stdio.h>
#include <Time.h>
LRESULT CALLBACK WindowFunc(HWND, UINT,
WPARAM, LPARAM);
char szWinName[]="МоеОкно"; // Имя класса окна
char str[80]=""; // Буфер для строки вывода
int X Y // Координаты строки на экране
int WINAPI WinMain(HINSTANCE hThisInst,
HINSTANCE hPrevInst,
LPSTR lpszArgs,
int nWinMode)
KillTimer(hwnd,1); // Освободить таймер
return msg.wParam;
Windows
LRESULT CALLBACK WindowFunc(HWND hwnd,
UINT message,
WPARAM wParam,
LPARAM lParam)
return
}
|