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

📄 progress.pas

📁 这是一套全面的网络组件
💻 PAS
字号:
unit Progress;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, StdCtrls;

type
  TfrmProgress = class(TForm)
    ProgressBar: TProgressBar;
    btnStop: TButton;
    lblMessage: TLabel;
    procedure btnStopClick(Sender: TObject);
  private
    FOnStop: TNotifyEvent;
  protected
    procedure CreateParams(var Params: TCreateParams); override;
  public
    procedure SendProgress(AMessageCount: Integer);
    procedure RetrProgress(AMessageCount: Integer);
    procedure SetupProgress(AMessageCount: Integer);
    procedure StepProgress;
    property OnStop: TNotifyEvent read FOnStop write FOnStop;
  end;

implementation

{$R *.dfm}

{ TfrmProgress }

procedure TfrmProgress.RetrProgress(AMessageCount: Integer);
begin
  lblMessage.Caption := 'Retrieve Messages';
  SetupProgress(AMessageCount);
  Show();
end;

procedure TfrmProgress.SendProgress(AMessageCount: Integer);
begin
  lblMessage.Caption := 'Send Message';
  SetupProgress(AMessageCount);
  Show();
end;

procedure TfrmProgress.StepProgress;
begin
  ProgressBar.StepIt();
  Application.ProcessMessages();
end;

procedure TfrmProgress.btnStopClick(Sender: TObject);
begin
  if Assigned(OnStop) then
  begin
    OnStop(Self);
  end;
end;

procedure TfrmProgress.CreateParams(var Params: TCreateParams);
begin
  inherited CreateParams(Params);
  if (Screen.ActiveCustomForm <> nil) then
  begin
    Params.WndParent := Screen.ActiveCustomForm.Handle;
  end;
end;

procedure TfrmProgress.SetupProgress(AMessageCount: Integer);
begin
  ProgressBar.Max := AMessageCount;
  ProgressBar.Position := 0;
  Application.ProcessMessages();
end;

end.

⌨️ 快捷键说明

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