Здравствуйте!
Надеюсь на Вашу помощь.
Задание:
1. Перед пользователем окно, в котором он должен ввести свои ФИО.
2. Во втором окне пользователю предлагается выбрать тест, который он хочет пройти через OpenDialog.
3. Название,которое выбирается в OpenDialog сохраняется в переменную.
4. Открывается этот файл с именем этой переменной. В 3-ей форме создается некоторое количество лейблов и столько же едитов. В каждый лейбл записывается вопрос -1 строка из файла. В соседний едит пользователь должен ввести ответ на него.
5. Результатом проги является то, что все ответы пользователя сохраняются в отдельный файл, а еще этому файлу нужно обеспечить защиту от ручной корректировки результатов.
Надеюсь, что объяснила понятно. То, что у меня получилось (3 юнита) здесь. Буду очень благодарна, если найдете ошибку
PHP код:
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;
type
{ TForm1 }
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Edit1: TEdit;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2;
{ TForm1 }
procedure TForm1.Button2Click(Sender: TObject);
begin
close;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Form2.Label2.Caption:=Form1.Edit1.Text;
Form2.ShowModal;
end;
{$R *.lfm}
end.
PHP код:
unit Unit2;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;
type
{ TForm2 }
TForm2 = class(TForm)
Button1: TButton;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
OpenDialog1: TOpenDialog;
procedure Button1Click(Sender: TObject);
private
{ private declarations }
public
Nametext:string;
{ public declarations }
end;
var
Form2: TForm2;
implementation
uses Unit3;
{ TForm2 }
procedure TForm2.Button1Click(Sender: TObject);
begin
OpenDialog1.Execute;
if(OpenDialog1.FileName <> '') then begin
Nametext:= FileUtil.UTF8ToSys(OpenDialog1.FileName);
Form3.ShowModal;
end;
end;
{$R *.lfm}
end.
PHP код:
unit Unit3;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;
type
{ TForm3 }
TForm3 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure fclose(Sender: TObject);
procedure orm(Sender: TObject);
procedure write(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form3: TForm3;
f,f2:TextFile;count:integer;
implementation
uses Unit2,Unit1;
{ TForm3 }
procedure TForm3.orm(Sender: TObject);
var edt: TEdit;lbl: TLabel;toop1:integer;S:string;
begin
AssignFile(f,Form2.Nametext);
Reset(f);
toop1:=10;count:=1;
while Not EOF(f) do
begin
Readln(f, S);
edt:=TEdit.Create(Form3);
edt.Parent:=Form3;
edt.Top:=toop1;
edt.Left:=100;
lbl:=TLabel.Create(Form3);
lbl.Parent:=Form3;
lbl.Caption := S;
lbl.Top:=toop1;
inc(count);
inc(toop1,20);
CloseFile(f);
end;end;
procedure TForm3.fclose(Sender: TObject);
begin
close;Form1.Close;
Form2.Close;
end;
procedure TForm3.write(Sender: TObject);
var i:integer;
begin
AssignFile(f2,'Answers');
Rewrite(f2);
Append(f2);
for i:=1 to count do
begin
Writeln(f2,TEdit(FindComponent('Edit'+IntToStr(i))).Text);
end;
closefile(f2);
end;
{$R *.lfm}
end.