unit main_u;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Grids, Menus, Buttons, ExtCtrls, TeeProcs, TeEngine, Chart,
ImgList, DXDraws;
type
TMain =
class(TForm)
NutzerEingabe: TEdit;
version: TLabel;
VKCoach: TLabel;
MainMenu: TMainMenu;
Datei: TMenuItem;
BeendenMenu: TMenuItem;
voka: TLabel;
ausgabelabel: TLabel;
eingabelabel: TLabel;
OK: TBitBtn;
YesOrNo: TImage;
TextRight: TLabel;
antwort: TLabel;
answer: TLabel;
Beenden: TBitBtn;
art: TLabel;
Info: TMenuItem;
Auswertung: TButton;
procedure BeendenMenuClick(Sender: TObject);
procedure BeendenClick(Sender: TObject);
procedure OKClick(Sender: TObject);
procedure InfoClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure AuswertungClick(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
type TEintrag =
record
englisch,
deutsch:
string[255];
end;
var
Main: TMain;
F: textfile;
a:
string[255];
liste:
Array of TEintrag;
Gesamt: Integer;
Richtig: Integer;
Falsch: Integer;
implementation
{$R *.DFM}
procedure readinifile(dateiname:
string);
begin
assignfile(F, dateiname);
reset(F);
while not EOF(F)
do
begin
try
setlength(liste, length(liste) +1 );
readln(a);
readln(a);
liste[high(liste)].deutsch := a;
readln(a);
liste[high(liste)].englisch := a;
except
setlength(liste, length(liste) -1 );
end;
end;
closefile(F);
end;
function getrandomitem: TEintrag;
begin
if length(liste) <>0
then
Result := liste[round(high(liste)* random)];
end;
//END!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
procedure TMain.BeendenMenuClick(Sender: TObject);
begin
Close;
end;
procedure TMain.BeendenClick(Sender: TObject);
begin
Close;
end;
procedure TMain.OKClick(Sender: TObject);
var
puffer: TEintrag;
begin
if ansilowercase(NutzerEingabe.Text) = puffer.englisch
then
begin
TextRight.Caption := '
Richtig';
YesOrNo.Picture.LoadFromFile('
Graphics/yes.bmp');
NutzerEingabe.SetFocus;
puffer :=getrandomitem;
readinifile('
d-e.ini');
voka.Caption := puffer.deutsch;
Auswertung.Enabled := True;
Gesamt := Gesamt + 1;
Richtig := Richtig + 1;
end
else
begin
TextRight.Caption := '
Falsch';
YesOrNo.Picture.LoadFromFile('
Graphics/no.bmp');
answer.Visible := true;
antwort.Caption := puffer.englisch;
NutzerEingabe.SetFocus;
puffer :=getrandomitem;
readinifile('
d-e.ini');
voka.Caption := puffer.deutsch;
Auswertung.Enabled := True;
Gesamt := Gesamt + 1;
Falsch := Falsch + 1;
end;
end;
procedure TMain.InfoClick(Sender: TObject);
begin
Info.Visible := True;
end;
procedure TMain.FormCreate(Sender: TObject);
var
puffer: TEintrag;
begin
puffer :=getrandomitem;
readinifile('
d-e.ini');
voka.Caption := puffer.deutsch;
Gesamt := 0;
Richtig := 0;
Falsch := 0;
end;
procedure TMain.AuswertungClick(Sender: TObject);
var
Ergebnis: Integer;
begin
Ergebnis := Gesamt
div Richtig * 100;
TextRight.Caption := IntToStr(Ergebnis) + '
% richtig';
YesOrNo.Visible := False;
answer.Visible := False;
antwort.Visible := False;
end;
end.