⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 itimers.pas

📁 iocopm3.04源码,一套很好的工控开发工具
💻 PAS
📖 第 1 页 / 共 3 页
字号:
      {$else}
      case FEnabled9 of
        False : if Assigned(FHandle9) then QTimer_stop(FHandle9);
        True  : if not (csDesigning in ComponentState) then
                  begin
                    if not Assigned(FHandle9) then
                      begin
                        FHandle9 := QTimer_create(nil, nil);
                        FHook9 := QTimer_hook_create(FHandle9);
                        QTimer_timeout_Event(Timeout) := TimerCallBack9;
                        QTimer_hook_hook_timeout(FHook9, Timeout);
                      end;
                      QTimer_start(FHandle9, FInterval9, False);
                  end;
      end;
      {$endif}
    end;
end;
//****************************************************************************************************************************************************
//****************************************************************************************************************************************************
procedure TiTimers.SetInterval1(const Value: Integer);
begin
  if Value < 0 then raise Exception.Create('Value must be Positive');
  if FInterval1 <> Value then
    begin
      FInterval1 := Value;
      if FEnabled1 then
        begin
          {$ifndef iCLX}
          if (FHandle1 <> 0) then KillTimer(FWindowHandle, FHandle1);
          FHandle1 := SetTimer(FWindowHandle, 1, FInterval1, nil);
          {$else}
          if Assigned(FHandle1) then QTimer_changeInterval(FHandle1, FInterval1);
          {$endif}
        end;
    end;
end;
//****************************************************************************************************************************************************
procedure TiTimers.SetInterval2(const Value: Integer);
begin
  if Value < 0 then raise Exception.Create('Value must be Positive');
  if FInterval2 <> Value then
    begin
      FInterval2 := Value;
      if FEnabled2 then
        begin
          {$ifndef iCLX}
          if (FHandle2 <> 0) then KillTimer(FWindowHandle, FHandle2);
          FHandle2 := SetTimer(FWindowHandle, 2, FInterval2, nil);
          {$else}
          if Assigned(FHandle2) then QTimer_changeInterval(FHandle2, FInterval2);
          {$endif}
        end;
    end;
end;
//****************************************************************************************************************************************************
procedure TiTimers.SetInterval3(const Value: Integer);
begin
  if Value < 0 then raise Exception.Create('Value must be Positive');
  if FInterval3 <> Value then
    begin
      FInterval3 := Value;
      if FEnabled3 then
        begin
          {$ifndef iCLX}
          if (FHandle3 <> 0) then KillTimer(FWindowHandle, FHandle3);
          FHandle3 := SetTimer(FWindowHandle, 3, FInterval3, nil);
          {$else}
          if Assigned(FHandle3) then QTimer_changeInterval(FHandle3, FInterval3);
          {$endif}
        end;
    end;
end;
//****************************************************************************************************************************************************
procedure TiTimers.SetInterval4(const Value: Integer);
begin
  if Value < 0 then raise Exception.Create('Value must be Positive');
  if FInterval4 <> Value then
    begin
      FInterval4 := Value;
      if FEnabled4 then
        begin
          {$ifndef iCLX}
          if (FHandle4 <> 0) then KillTimer(FWindowHandle, FHandle4);
          FHandle4 := SetTimer(FWindowHandle, 4, FInterval4, nil);
          {$else}
          if Assigned(FHandle4) then QTimer_changeInterval(FHandle4, FInterval4);
          {$endif}
        end;
    end;
end;
//****************************************************************************************************************************************************
procedure TiTimers.SetInterval5(const Value: Integer);
begin
  if Value < 0 then raise Exception.Create('Value must be Positive');
  if FInterval5 <> Value then
    begin
      FInterval5 := Value;
      if FEnabled5 then
        begin
          {$ifndef iCLX}
          if (FHandle5 <> 0) then KillTimer(FWindowHandle, FHandle5);
          FHandle5 := SetTimer(FWindowHandle, 5, FInterval5, nil);
          {$else}
          if Assigned(FHandle5) then QTimer_changeInterval(FHandle5, FInterval5);
          {$endif}
        end;
    end;
end;
//****************************************************************************************************************************************************
procedure TiTimers.SetInterval6(const Value: Integer);
begin
  if Value < 0 then raise Exception.Create('Value must be Positive');
  if FInterval6 <> Value then
    begin
      FInterval6 := Value;
      if FEnabled6 then
        begin
          {$ifndef iCLX}
          if (FHandle6 <> 0) then KillTimer(FWindowHandle, FHandle6);
          FHandle6 := SetTimer(FWindowHandle, 6, FInterval6, nil);
          {$else}
          if Assigned(FHandle6) then QTimer_changeInterval(FHandle6, FInterval6);
          {$endif}
        end;
    end;
end;
//****************************************************************************************************************************************************
procedure TiTimers.SetInterval7(const Value: Integer);
begin
  if Value < 0 then raise Exception.Create('Value must be Positive');
  if FInterval7 <> Value then
    begin
      FInterval7 := Value;
      if FEnabled7 then
        begin
          {$ifndef iCLX}
          if (FHandle7 <> 0) then KillTimer(FWindowHandle, FHandle7);
          FHandle7 := SetTimer(FWindowHandle, 7, FInterval7, nil);
          {$else}
          if Assigned(FHandle7) then QTimer_changeInterval(FHandle7, FInterval7);
          {$endif}
        end;
    end;
end;
//****************************************************************************************************************************************************
procedure TiTimers.SetInterval8(const Value: Integer);
begin
  if Value < 0 then raise Exception.Create('Value must be Positive');
  if FInterval8 <> Value then
    begin
      FInterval8 := Value;
      if FEnabled8 then
        begin
          {$ifndef iCLX}
          if (FHandle8 <> 0) then KillTimer(FWindowHandle, FHandle8);
          FHandle8 := SetTimer(FWindowHandle, 8, FInterval8, nil);
          {$else}
          if Assigned(FHandle8) then QTimer_changeInterval(FHandle8, FInterval8);
          {$endif}
        end;
    end;
end;
//****************************************************************************************************************************************************
procedure TiTimers.SetInterval9(const Value: Integer);
begin
  if Value < 0 then raise Exception.Create('Value must be Positive');
  if FInterval9 <> Value then
    begin
      FInterval9 := Value;
      if FEnabled9 then
        begin
          {$ifndef iCLX}
          if (FHandle9 <> 0) then KillTimer(FWindowHandle, FHandle9);
          FHandle9 := SetTimer(FWindowHandle, 9, FInterval9, nil);
          {$else}
          if Assigned(FHandle9) then QTimer_changeInterval(FHandle9, FInterval9);
          {$endif}
        end;
    end;
end;
//****************************************************************************************************************************************************
{$ifndef iCLX}
procedure TiTimers.TimerProc(var Msg: TMessage);
begin
  with Msg do
    if Msg = WM_TIMER then
      case WParam of
        1 : if Assigned(FOnTimer1) then FOnTimer1(Self);
        2 : if Assigned(FOnTimer2) then FOnTimer2(Self);
        3 : if Assigned(FOnTimer3) then FOnTimer3(Self);
        4 : if Assigned(FOnTimer4) then FOnTimer4(Self);
        5 : if Assigned(FOnTimer5) then FOnTimer5(Self);
        6 : if Assigned(FOnTimer6) then FOnTimer6(Self);
        7 : if Assigned(FOnTimer7) then FOnTimer7(Self);
        8 : if Assigned(FOnTimer8) then FOnTimer8(Self);
        9 : if Assigned(FOnTimer9) then FOnTimer9(Self);
      end
    else
      Result := DefWindowProc(FWindowHandle, Msg, wParam, lParam);
end;
{$else}
//****************************************************************************************************************************************************
procedure TiTimers.TimerCallBack1;
begin
  try
    if Assigned(FOnTimer1) then FOnTimer1(Self);
  except
    Application.HandleException(Self);
  end;
end;
//****************************************************************************************************************************************************
procedure TiTimers.TimerCallBack2;
begin
  try
    if Assigned(FOnTimer2) then FOnTimer2(Self);
  except
    Application.HandleException(Self);
  end;
end;
//****************************************************************************************************************************************************
procedure TiTimers.TimerCallBack3;
begin
  try
    if Assigned(FOnTimer3) then FOnTimer3(Self);
  except
    Application.HandleException(Self);
  end;
end;
//****************************************************************************************************************************************************
procedure TiTimers.TimerCallBack4;
begin
  try
    if Assigned(FOnTimer4) then FOnTimer4(Self);
  except
    Application.HandleException(Self);
  end;
end;
//****************************************************************************************************************************************************
procedure TiTimers.TimerCallBack5;
begin
  try
    if Assigned(FOnTimer5) then FOnTimer5(Self);
  except
    Application.HandleException(Self);
  end;
end;
//****************************************************************************************************************************************************
procedure TiTimers.TimerCallBack6;
begin
  try
    if Assigned(FOnTimer6) then FOnTimer6(Self);
  except
    Application.HandleException(Self);
  end;
end;
//****************************************************************************************************************************************************
procedure TiTimers.TimerCallBack7;
begin
  try
    if Assigned(FOnTimer7) then FOnTimer7(Self);
  except
    Application.HandleException(Self);
  end;
end;
//****************************************************************************************************************************************************
procedure TiTimers.TimerCallBack8;
begin
  try
    if Assigned(FOnTimer8) then FOnTimer8(Self);
  except
    Application.HandleException(Self);
  end;
end;
//****************************************************************************************************************************************************
procedure TiTimers.TimerCallBack9;
begin
  try
    if Assigned(FOnTimer9) then FOnTimer9(Self);
  except
    Application.HandleException(Self);
  end;
end;
{$endif}
//****************************************************************************************************************************************************
end.


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -