Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.14;
Скачать: CL | DM;

Вниз

help please   Найти похожие ветки 

 
nika_ufc ©   (2002-11-05 02:50) [0]

Я читаю и пишу программу из статьи:Изучение простейших приемов работы с файлами и потоками на примере программы «Монитор каталогов», но есть проблеми,вот и они:
Яприиеду отривок из статьи:


В меню Delphi File выберем New


 
nika_ufc ©   (2002-11-05 03:20) [1]

ufMain:

unit ufMain;

interface

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

type
TfMonDirMain = class(TForm)
mm: TMainMenu;
lbLog: TListBox;
sbMain: TStatusBar;
tmDate: TTimer;
Monitor1: TMenuItem;
mmExit: TMenuItem;
mmStart: TMenuItem;
mmStop: TMenuItem;
procedure tmDateTimer(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure mmExitClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
fMonDirMain: TfMonDirMain;

implementation

{$R *.dfm}


procedure TfMonDirMain.tmDateTimer(Sender: TObject);
begin
sbMain.Panels[0].Text:=FormatDateTime("dd.mm.yyyy hh:nn:ss",Now)
end;

procedure TfMonDirMain.FormCreate(Sender: TObject);
begin
tmDateTimer(Self);
sbMain.Panels[1].Text:="disconnected";
Application.Title:="Directory monitor"
end;


procedure TfMonDirMain.mmExitClick(Sender: TObject);
begin
Close
end;

end.

uMonThread:


unit ufMain;

interface

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

type
TfMonDirMain = class(TForm)
mm: TMainMenu;
lbLog: TListBox;
sbMain: TStatusBar;
tmDate: TTimer;
Monitor1: TMenuItem;
mmExit: TMenuItem;
mmStart: TMenuItem;
mmStop: TMenuItem;
procedure tmDateTimer(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure mmExitClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
fMonDirMain: TfMonDirMain;

implementation

{$R *.dfm}


procedure TfMonDirMain.tmDateTimer(Sender: TObject);
begin
sbMain.Panels[0].Text:=FormatDateTime("dd.mm.yyyy hh:nn:ss",Now)
end;

procedure TfMonDirMain.FormCreate(Sender: TObject);
begin
tmDateTimer(Self);
sbMain.Panels[1].Text:="disconnected";
Application.Title:="Directory monitor"
end;


procedure TfMonDirMain.mmExitClick(Sender: TObject);
begin
Close
end;

end.



 
nika_ufc ©   (2002-11-05 03:34) [2]

uMonThread:

unit uMonThread;

interface

uses
Classes;

type
TMonDirThread = class(TThread)
public
constructor TMonDirThread.Create(aPath: String);
destructor Destroy; override;
private
{ Private declarations }
protected
procedure Execute; override;
end;

implementation

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

Synchronize(UpdateCaption);

and UpdateCaption could look like,

procedure TMonDirThread.UpdateCaption;
begin
Form1.Caption := "Updated in a thread";
end; }

{ TMonDirThread }

procedure TMonDirThread.Execute;
begin
{ Place thread code here }
end;
constructor TMonDirThread.Create(aPath: String);
begin
inherited Create(True);
FreeOnTerminate:=True;
FPath:=aPath;
Self.Priority:=tpHighest;
Resume;
end;


end.



 
Dr_Mike ©   (2002-11-05 03:41) [3]

Строка 11:
Нельзя писать в объявлении класса так, как пишешь ты
constructor TMonDirThread.Create(aPath: String);
сам класс указывать не нужно!!!
напиши просто constructor Create(aPath: String);
и сразу решатся все проблемы.


 
Dr_Mike ©   (2002-11-05 03:45) [4]

Должно быть так:

TMonDirThread = class(TThread)
public
constructor Create(aPath: String);
destructor Destroy; override;
protected
procedure Execute; override;
end;


 
Dr_Mike ©   (2002-11-05 03:48) [5]

И зачем только пытаться определять деструктор потока ???
Убираем еще одну лишнюю строку:

TMonDirThread = class(TThread)
public
constructor Create(aPath: String);
protected
procedure Execute; override;
end;



Страницы: 1 вся ветка

Текущий архив: 2002.11.14;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.017 c
7-46172
Tony'c
2002-09-13 16:47
2002.11.14
Как считывать трафик с сетевой карты ?


3-45746
Jen N
2002-10-24 21:02
2002.11.14
Есть ли хоть одна запись с данным значением поля?


3-45714
seter
2002-10-24 11:10
2002.11.14
Базы данных


1-45833
d_oleg
2002-11-05 10:53
2002.11.14
используются ли XPStyles


14-46078
Beginner-Designer
2002-10-24 16:31
2002.11.14
FAQ по прошивкам телефонов Nokia