Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Win32 API - Таймеры: почему не работают?

Ответить
Настройки темы
Win32 API - Таймеры: почему не работают?

Ветеран


Сообщения: 1404
Благодарности: 135

Профиль | Отправить PM | Цитировать


Читал MSDN, но так и не понял, почему не работает таймер..

Код: Выделить весь код
#define ID_TIMER 13455

<...>
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
int WINAPI WinMain(HINSTANCE hInst,HINSTANCE hPrevInst,PSTR szCmdLine,int iCmdShow);
<...>
void main()
{
<...>
HINSTANCE hInst=GetModuleHandle(NULL);  
WinMain(hInst,0,0,0);
<...>
}

int WINAPI WinMain(HINSTANCE hInst,HINSTANCE hPrevInst,PSTR szCmdLine,int iCmdShow)
{
<...> 	
SetTimer (hwnd, ID_TIMER, 10, (TIMERPROC) NULL);
<...>
 }

LRESULT CALLBACK WndProc(HWND hwnd, UINT imsg,WPARAM wParam, LPARAM lParam)
   {
<...>
   switch(imsg)
   {
      case WM_TIMER:		  
		switch (wParam) 
			{ 
			case ID_TIMER: 				
				Msg ("1");//MessageBox не появляется, значит сообщение не поступает
				SendMessage(hwnd,WM_KEYDOWN,VK_DOWN,NULL); 
				return 0;
			} 
		return 0;

Отправлено: 10:05, 06-07-2008

 

Старожил


Сообщения: 181
Благодарности: 43

Профиль | Отправить PM | Цитировать


Цитата:
SetTimer (hwnd, ID_TIMER, 10, (TIMERPROC) NULL);
hwnd откуда берешь?

Отправлено: 22:04, 06-07-2008 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 1404
Благодарности: 135

Профиль | Отправить PM | Цитировать


Цитата:
hwnd откуда берешь?
hwnd=CreateWindow(szAppName,"tetris",WS_CAPTION|WS_SYSMENU|WS_MINIMIZEBOX,
0,0,window_wdth,window_hgth,NULL,NULL,hInst,NULL);

***Изменено***

Решил проблему. В оконой процедуре надо писать break а не return 0.

Написал наконец-то свой первый достаточно крупный проект - тетрис.

Последний раз редактировалось mrcnn, 07-07-2008 в 17:35.


Отправлено: 08:36, 07-07-2008 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Win32 API - Таймеры: почему не работают?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Интернет - Почему windows 7 постоянно принимает пакеты?даже если браузеры не работают? cprrpc Microsoft Windows 7 6 10-07-2009 20:40
Разное - [решено] Не работают ярлыки на рабочем столе (вирусов нет). Почему? truvo Microsoft Windows 2000/XP 8 18-12-2008 20:30
Не работают скрипы Piratic Вебмастеру 2 27-01-2007 06:23
Почему не работают субтитры зашитые в .mkv ? vivs Видео и аудио: обработка и кодирование 8 15-08-2006 00:20
Что поменялось в ОПК, почему страницы - html, и почему нельзя удалять свое сообщение? Arrest О сайте и форуме 9 04-05-2006 22:22




 
Переход