Тема: ProcessMessages
Показать сообщение отдельно
  #1  
Старый 17.10.2011, 14:18
freedomman freedomman вне форума
Новичок
 
Регистрация: 12.10.2011
Сообщения: 51
Репутация: 10
По умолчанию ProcessMessages

ProcessMessages выдает ошибку при некоторых значениях функции, никак с ней не связанной.
Код:
While not (Form23.r=100) do // бесконечный цикл, пока флаг остановки не поднят:
        begin
        try
        Form23.razgAZ;
   Form23.firebol;
   Form23.sswave;
    

           if (CheckBox9.Checked)or(CheckBox1.Checked) then
         begin
              if tit=0 then begin
           Chart1.LeftAxis.Title.Caption:='Воздействие волны давления на человека, наход. вне здания';
           inc(tit);
           end else Chart1.LeftAxis.Title.Caption:='';
        Chart1.AddSeries(S8);
           S8.Title:='Воздействие волны давления на человека, наход. вне здания';
           s8.AddXY(Form23.r,Form23.fprvz);
         end;

          if (CheckBox12.Checked)or(CheckBox1.Checked) then
         begin
              if tit=0 then begin
           Chart1.LeftAxis.Title.Caption:='Избыточное давление';
           inc(tit);
           end else Chart1.LeftAxis.Title.Caption:='';
            Chart1.AddSeries(s5);
           s5.Title:='Избыточное давление';
           s5.AddXY(Form23.r,Form23.fp);


         end;


          Form23.r:=form23.r+1;
          Sleep(10);
          Application.ProcessMessages;
           Except on E : Exception do
      ShowMessage(E.ClassName+' ошибка с сообщением : '+E.Message);
           end;
ошибка типа invalid pointer operation, возникает при выборе CheckBox12 , без Application.ProcessMessages; все работает идеально, но не совсем красиво)
Ответить с цитированием