threadhint.pas

来自「产品信息系统!关于产品基础信息的系统!功能强大!」· PAS 代码 · 共 62 行

PAS
62
字号
unit ThreadHint;

interface

uses
  Classes,Controls,Forms;

type
  TThreadHint = class(TThread)
  private
    FWinControlClass:TWinControlClass;
    //FWinControl:TWinControl;
    FOwner:TComponent;
    procedure ConnectDataSource;
    { Private declarations }
  protected
    procedure Execute; override;
  public
    constructor Create(AnyTWinControlClass:TWinControlClass;AOwner:TComponent);virtual;
  end;

var
    FWinControl:TWinControl;

implementation

{ Important: Methods and properties of objects in visual components can only be
  used in a method called using Synchronize, for example,

      Synchronize(UpdateCaption);

  and UpdateCaption could look like,

    procedure ThreadHint.UpdateCaption;
    begin
      Form1.Caption := 'Updated in a thread';
    end; }

{ ThreadHint }

procedure TThreadHint.Execute;
begin
  { Place thread code here }
    Synchronize(ConnectDataSource);
end;

constructor TThreadHint.Create(AnyTWinControlClass:TWinControlClass;AOwner:TComponent);
begin
    FWinControlClass:=AnyTWinControlClass;
    FOwner:=AOwner;
    inherited Create(False);
    FreeOnTerminate:=True;
end;

procedure TThreadHint.ConnectDataSource;
begin
    FWincontrol:=FWinControlClass.Create(FOwner);
    FWinControl.Show;
end;

end.

⌨️ 快捷键说明

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