Очень сильно извиняюсь. Пересмотрел кучу примеров, самые толковые из которых:
http://www.codingrus.ru/readarticle.php?article_id=1999
http://www.delphi.int.ru/articles/39/
http://www.codenet.ru/progr/delphi/stat/d_http.php
И всё-таки я жутко туплю. Попробую попунктно:
1). Уже создан проект. Начало листинга:
Код:
unit vk;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdHTTP, StdCtrls, ExtDlgs, ComCtrls, CheckLst, Math;
type
TForm1 = class(TForm)
IdHTTP1: TIdHTTP;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
TabSheet3: TTabSheet;
Edit1: TEdit;
Edit2: TEdit;
Label3: TLabel;
Label2: TLabel;
Label1: TLabel;
Button1: TButton;
Memo1: TMemo;
Memo2: TMemo;
Button2: TButton;
OpenDialog1: TOpenDialog;
Button3: TButton;
OpenDialog2: TOpenDialog;
Edit3: TEdit;
Button4: TButton;
Label4: TLabel;
CheckListBox1: TCheckListBox;
Button5: TButton;
Memo3: TMemo;
Label5: TLabel;
Button6: TButton;
Label6: TLabel;
StatusBar1: TStatusBar;
ProgressBar1: TProgressBar;
Button7: TButton;
TabSheet4: TTabSheet;
Edit4: TEdit;
Button8: TButton;
Memo4: TMemo;
Label7: TLabel;
ProgressBar2: TProgressBar;
Label8: TLabel;
Button9: TButton;
Label9: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
procedure Button9Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure Delay (const Seconds: Real);
procedure FakeCheck;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
type
TMyThread = class(TThread)
private
{ Private declarations }
protected
procedure FakeCheck;
procedure Execute; override;
end;
Тут
FakeCheck эта та самая длительная процедура.
По ctrl+shift+c создалось следующее:
Код:
{ TMyThread }
procedure TMyThread.Execute;
begin
inherited;
end;
procedure TMyThread.FakeCheck;
begin
end;
Добавлю четыре кнопки:
btnExecute, btnSuspend, btnResume,btnTerminate
Как сделать чтобы:
Цитата:
procedure TForm1.btnStartClick(Sender: TObject);
begin
//Запускаем FakeCheck;
end;
procedure TForm1.btnSuspendClick(Sender: TObject);
begin
//FakeCheck; на паузу
end;
procedure TForm1.btnResumeClick(Sender: TObject);
begin
//FakeCheck; с паузы
end;
procedure TForm1.btnTerminateClick(Sender: TObject);
begin
//Останавливаем FakeCheck;
end;
|
