Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Странная ошибка при работе с контекстом и таймером [D7, Win2k]


tomek ©   (2005-09-20 16:02:00) 

Здравствуйте!
Может кто-то подскажет, почему при попытке переместить окно, выводится дебаггер эксепшен :


procedure TimerProc(h:Hwnd;mes:Cardinal;id:Cardinal;time:Cardinal);
 var ps:TPaintStruct;
     br,brOld:HBRUSH;
     dc:HDC;
begin
if id=timer_id then begin
  dc:=GetDC(h);
  br:=CreateSolidBrush(RGB(r,0,0));
  inc(r);
  if r=255 then r:=0;
  brOld:=SelectObject(dc,br);
  FillRect(dc,Rect(10,10,100,100),br);
  SelectObject(dc,brOld);
  DeleteObject(br);
  ReleaseDC(h,dc);
end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  r:=0;
  SetTimer(handle,timer_id,500,@TimerProc);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
 KillTimer(handle,timer_id);
end;


wicked   (2005-09-24 22:11:00) [1]

я, конечно, могу ошибаться, но может стоит в процедуре таймера проверять параметр mes, чтоб был равен WM_TIMER?...


Наверх

Титульная страница Поиск, карта сайта Написать письмо