Блин. В чем же дело?
Я загружаю с сайта, все работает. В корневой папке C диска.
Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,StdCtrls,Unit4, Mask;
type
TForm1 = class(TForm)
Button1: TButton;
Button3: TButton;
Button4: TButton;
Button5: TButton;
Button6: TButton;
Button7: TButton;
Edit1: TEdit;
Edit2: TEdit;
Label1: TLabel;
Label2: TLabel;
Memo1: TMemo;
MaskEdit1: TMaskEdit;
Edit3: TEdit;
MaskEdit2: TMaskEdit;
Label4: TLabel;
Label3: TLabel;
Label6: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
Mas:Tdar;
Poezd:Tpoezd;
Procedure RefreshMemo;
implementation
{$R *.dfm}
Procedure RefreshMemo;
Var i:integer;
S:string;
Begin
Form1.Memo1.Lines.Clear;
For i:=0 to high(Mas) do
begin
// S:=mas[i].fam + ' ' + mas[i].naz + ' '+inttostr(mas[i].nomer)+ ' '+Timetostr(mas[i].time);
S:= mas[i].naz + ' '+inttostr(mas[i].nomer)+ ' '+Timetostr(mas[i].time);
Form1.Memo1.Lines.Add(S);
end;
End;
procedure TForm1.Button3Click(Sender: TObject);
begin
Sort_Array(Mas);
RefreshMemo;
end;
procedure TForm1.Button5Click(Sender: TObject);
begin
begin
Edit1.Clear;
Edit2.Clear;
MaskEdit1.Clear;
end;
end;
procedure TForm1.Button6Click(Sender: TObject);
begin
Memo1.Clear;
end;
procedure TForm1.Button7Click(Sender: TObject);
begin
Close;
end;
procedure TForm1.Button4Click(Sender: TObject);//Эту часть не трограл
Var
s:string;
begin
Poisk(Mas,s);// Переменная S не задана.
Memo1.Lines.Add(s);
end;
procedure TForm1.Button1Click(Sender: TObject);
Var i:integer;
s:string;
begin
If (Edit1.Text<>'') and (Edit2.Text <>'') then
begin
Poezd.naz:=Edit1.Text;
Poezd.nomer:=strtoint(Edit2.Text);
Poezd.time:=strtotime(MaskEdit1.Text);
Add_to_Array(Mas,Poezd);
end;
Refreshmemo;
end;
end.
Только я u2 сохранил под unit4
Код:
unit Unit4;
interface
uses
Sysutils,Dialogs,Stdctrls;
Type
TPoezd=record
naz:string[10];
nomer:byte;
time:TDateTime;
sb:real;
// fam:string;
end;
Tdar=array of TPoezd;
Procedure Add_to_Array(Var Mas:Tdar;Poezd:TPoezd);
Procedure Sort_Array(Var Mas:Tdar);
Procedure Poisk(Mas:Tdar; Var s:string);
implementation
Procedure Add_to_Array(Var Mas:Tdar; Poezd:TPoezd);
Begin
If Mas=nil then Setlength(Mas,1)
else Setlength(Mas,length(Mas)+1);
Mas[high(Mas)]:=Poezd;
End;
Procedure Sort_Array( Var Mas:Tdar);
var
i,j:integer;
//r:Tstud;
Poezd:TPoezd;
Begin
For i:=0 to high(MAS)-1 do
Mas[i].sb:=Mas[i].nomer;
{ Sortirovka massiva: }
For i:=0 to high(MAS)-1 do
For j:=i+1 to high(MAS) do
if mas[i].sb > mas[j].sb then
begin
Poezd:=mas[i];
mas[i]:=mas[j];
mas[j]:=Poezd;
end;
End;
Procedure Poisk(Mas:Tdar; var s:string);//не менял
Var i:integer;
Begin
For i:=0 to high(MAS)-1 do
if (mas[i].time)<>0 then
s:=Mas[i].naz;
end;
end.
И скрин экрана выкладываю. Предлагаю еще сделать сохранение и считывание сведений memo из файла.