D
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include "Unit2.h"
#include "Unit3.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
bool k=false;
bool q=false;
bool r=false;
bool xx=true;
int r2=0;
int r3=0;
int figurvoll[10];
schockolade schocko;
figurgu figu[6];
void hartgummi::Set_wertguinsg(){wertguinsg=0;
for (int i=0; i<figurenguinsg; i++)
{wertguinsg=wertguinsg + figu[i].Get_anzahlfigu() * figu[i].Get_wertfigu();}};
figurba fiba[6];
void basteln::Set_wertbainsg(){wertbainsg=0;
for (int i=0; i<figurenbainsg; i++)
{wertbainsg=wertbainsg + fiba[i].Get_anzahlfiba() * fiba[i].Get_wertfiba();}};
figurpu fipu[6];
void puzzle::Set_wertpuinsg(){wertpuinsg=0;
for (int i=0; i<figurenpuinsg; i++)
{wertpuinsg=wertpuinsg + fipu[i].Get_anzahlfipu() * fipu[i].Get_wertfipu();}};
void figuren::Set_figureninsg(){r3=0;
for (int i=0; i<figu[1].Get_figurenguinsg() ;i++)
{r3 = r3 + figu[i].Get_anzahlfigu();}
for (int i=0; i<fiba[1].Get_figurenbainsg() ;i++)
{r3 = r3 + fiba[i].Get_anzahlfiba();}
for (int i=0; i<fipu[1].Get_figurenpuinsg() ;i++)
{r3 = r3 + fipu[i].Get_anzahlfipu();}
figureninsg = r3;}
void figuren::Set_wertinsg(){wertinsg = figu[1].Get_wertguinsg() + fiba[1].Get_wertbainsg() + fipu[1].Get_wertpuinsg();};
void ueei::Set_kosteninsg(){kosteninsg = Get_kosten () * Get_gekauft ();};
void ueei::Set_gewichtinsg(){gewichtinsg = Get_gewicht () * Get_gekauft ();}
void schockolade::Set_schockohaelftenvorhanden (){schockohaelftenvorhanden = Get_schockohaelften () - Get_schockohaelftengegessen ();};
void schockolade::Set_schockogeinsg (){schockogeinsg = Get_schockoge () * Get_schockohaelften ();};
AnsiString AppText;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
//hier kann man die transparenz der form festlegen
SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) | WS_EX_LAYERED);
SetLayeredWindowAttributes(Handle, 0, 255 /* 0 - 255 */, LWA_ALPHA);
//kreuz oben rechts ist deaktiviert
DeleteMenu(GetSystemMenu(Handle, false), SC_CLOSE, MF_BYCOMMAND);
//der lauftext unten und oben der titel
AppText = "Das ist die Ü-EI verwaltung, mit vielen Funktionen, eine Schockoladen Statistik, einer Ü-EI Statistik, und vielen Figuren usw. ...";
AppText = AppText + " *** ";
Application->Title = AppText;
Timer1->Interval = 200; // Das war eine passende Geschwindigkeit
//Gummi Erstellten objekten werte zuweisen
figu[1].Set_namefigu ("Frodo");
figu[1].Set_wertfigu (4561.33);
figu[1].Set_anzahlfigu (0);
figu[1].Set_namereigu ("Herr der Ringe");
figu[2].Set_namefigu ("Aragon");
figu[2].Set_wertfigu (45.33);
figu[2].Set_anzahlfigu (1);
figu[2].Set_namereigu ("Herr der Ringe");
figu[3].Set_namefigu ("Happy");
figu[3].Set_wertfigu (461.33);
figu[3].Set_anzahlfigu (1);
figu[3].Set_namereigu ("Happy-Hippo");
figu[4].Set_namefigu ("Hippo");
figu[4].Set_wertfigu (561.33);
figu[4].Set_anzahlfigu (1);
figu[4].Set_namereigu ("Happy-Hippo");
figu[5].Set_namefigu ("Schuldi");
figu[5].Set_wertfigu (56.33);
figu[5].Set_anzahlfigu (1);
figu[5].Set_namereigu ("Schildkröten");
figu[6].Set_namefigu ("Schildi");
figu[6].Set_wertfigu (51.33);
figu[6].Set_anzahlfigu (2);
figu[6].Set_namereigu ("Schildkröten");
//Basteln Erstellten objekten werte zuweisen
fiba[1].Set_namefiba ("Schildi-Bastel");
fiba[1].Set_wertfiba (51.33);
fiba[1].Set_anzahlfiba (2);
fiba[1].Set_namereiba ("Schildkröten-Bastel");
fiba[2].Set_namefiba ("Schuldi-Bastel");
fiba[2].Set_wertfiba (51.33);
fiba[2].Set_anzahlfiba (1);
fiba[2].Set_namereiba ("Schildkröten-Bastel");
fiba[3].Set_namefiba ("Hippo-Bastel");
fiba[3].Set_wertfiba (51.33);
fiba[3].Set_anzahlfiba (1);
fiba[3].Set_namereiba ("Happy-Hippo-Bastel");
fiba[4].Set_namefiba ("Happy-Bastel");
fiba[4].Set_wertfiba (51.33);
fiba[4].Set_anzahlfiba (2);
fiba[4].Set_namereiba ("Happy-Hippo-Bastel");
fiba[5].Set_namefiba ("Kula-Bastel");
fiba[5].Set_wertfiba (51.33);
fiba[5].Set_anzahlfiba (1);
fiba[5].Set_namereiba ("Koalla-Bastel");
fiba[6].Set_namefiba ("Kola-Bastel");
fiba[6].Set_wertfiba (51.33);
fiba[6].Set_anzahlfiba (2);
fiba[6].Set_namereiba ("Koalla-Bastel");
//Puzzle Erstellten objekten werte zuweisen
fipu[1].Set_namefipu ("Schildi-Puzzle");
fipu[1].Set_wertfipu (51.33);
fipu[1].Set_anzahlfipu (1);
fipu[1].Set_namereipu ("Schildkröten-Puzzle");
fipu[2].Set_namefipu ("Schuldi-Puzzle");
fipu[2].Set_wertfipu (51.33);
fipu[2].Set_anzahlfipu (2);
fipu[2].Set_namereipu ("Schildkröten-Puzzle");
fipu[3].Set_namefipu ("Happy-Puzzle");
fipu[3].Set_wertfipu (51.33);
fipu[3].Set_anzahlfipu (2);
fipu[3].Set_namereipu ("Happy-Hippo-Puzzle");
fipu[4].Set_namefipu ("Hippo-Puzzle");
fipu[4].Set_wertfipu (51.33);
fipu[4].Set_anzahlfipu (1);
fipu[4].Set_namereipu ("Happy-Hippo-Puzzle");
fipu[5].Set_namefipu ("Kola-Puzzle");
fipu[5].Set_wertfipu (51.33);
fipu[5].Set_anzahlfipu (2);
fipu[5].Set_namereipu ("Koalla-Puzzle");
//fipu[6].Set_namefipu ("Kula-Puzzle");
fipu[6].Set_wertfipu (51.33);
fipu[6].Set_anzahlfipu (1);
//fipu[6].Set_namereipu ("Koalla-Puzzle");
//Gummi wichtige globale werte, erste figur dient als main, werden gesetzt
figu[1].Set_reiguvoll (3);
figu[1].Set_reiguunvoll (0);
figu[1].Set_figurenguinsg (6);
//Basteln wichtige globale werte, erste figur dient als main, werden gesetzt
fiba[1].Set_reibavoll (3);
fiba[1].Set_reibaunvoll (0);
fiba[1].Set_figurenbainsg (6);
//Puzzle wichtige globale werte, erste figur dient als main, werden gesetzt
fipu[1].Set_reipuvoll (3);
fipu[1].Set_reipuunvoll (0);
fipu[1].Set_figurenpuinsg (6);
//Ü-EI Statistik werte setzen
fipu[1].Set_gekauft (1477);
fipu[1].Set_paletten (145);
fipu[1].Set_kosten (0.59);
fipu[1].Set_gewicht (39);
//Schockoladen Statistik
schocko.Set_schockoge (15);
schocko.Set_schockohaelften (365);
schocko.Set_schockohaelftengegessen (178);
//Gummi ComboBox1 REIHE reihen eintragung
for (int i=1; i<figu[1].Get_figurenguinsg(); i++)
{for (int j=0; j<ComboBox1->Items->Count; j++)
{if (ComboBox1->Items->Strings[j] == figu[i].Get_namereigu())
{k = true;}
}
if (k != true)
{ComboBox1->Items->Add(figu[i].Get_namereigu());
k=false;}
else {k=false;};
}
//Basteln ComboBox1 REIHE reihen eintragung
for (int i=1; i<fiba[1].Get_figurenbainsg(); i++)
{for (int j=0; j<ComboBox1->Items->Count; j++)
{if (ComboBox1->Items->Strings[j] == fiba[i].Get_namereiba())
{k = true;}
}
if (k != true)
{ComboBox1->Items->Add(fiba[i].Get_namereiba());
k=false;}
else {k=false;};
}
//Puzzle ComboBox1 REIHE reihen eintragung
for (int i=1; i<fipu[1].Get_figurenpuinsg(); i++)
{for (int j=0; j<ComboBox1->Items->Count; j++)
{if (ComboBox1->Items->Strings[j] == fipu[i].Get_namereipu())
{k = true;}
}
if (k != true)
{ComboBox1->Items->Add(fipu[i].Get_namereipu());
k=false;}
else {k=false;};
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Application->Terminate();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ComboBox1Change(TObject *Sender)
{
k=false;
for (int i=0; i<ComboBox1->Items->Count; i++)
{
//Added figuren von Gummi
if (ComboBox1->Text == ComboBox1->Items->Strings[i])
{ComboBox2->Clear();
for (int j=0; j<figu[1].Get_figurenguinsg()+1; j++)
{if (figu[j].Get_namereigu() == ComboBox1->Text)
{ComboBox2->Items->Add(figu[j].Get_namefigu());
k=true;
}
}
}
if (k == false) //wenn schon geaddet wurde muss das nicht mehr durchlaufen werden, problem mit clear gelößt
{
//Added figuren von Basteln
if (ComboBox1->Text == ComboBox1->Items->Strings[i])
{ComboBox2->Clear();
for (int j=0; j<fiba[1].Get_figurenbainsg()+1; j++)
{if (fiba[j].Get_namereiba() == ComboBox1->Text)
{ComboBox2->Items->Add(fiba[j].Get_namefiba());
k=true;
}
}
}
}
if (k == false) //wenn schon geaddet wurde muss das nicht mehr durchlaufen werden, problem mit clear gelößt
{
//Added figuren von Puzzle
if (ComboBox1->Text == ComboBox1->Items->Strings[i])
{ComboBox2->Clear();
for (int j=0; j<fipu[1].Get_figurenpuinsg()+1; j++)
{if (fipu[j].Get_namereipu() == ComboBox1->Text)
{ComboBox2->Items->Add(fipu[j].Get_namefipu());
k=true;
}
}
}
}
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
int avoll=0;
int aunvoll=0;
//setzt alle Werte der figur und der Reihe für Gummi
for (int i=0; i<figu[1].Get_figurenguinsg()+1; i++)
{if (figu[i].Get_namereigu() == ComboBox1->Text)
{if (ComboBox2->Text == figu[i].Get_namefigu())
{Edit4->Text = figu[i].Get_namefigu();
Edit1->Text = figu[i].Get_namereigu();
Edit5->Text = figu[i].Get_anzahlfigu();
Edit6->Text = figu[i].Get_wertfigu();
}
if (figu[i].Get_anzahlfigu() > 0)
{avoll++;}
else {aunvoll++;}
}
Edit2->Text = avoll;
Edit3->Text = aunvoll;
}
//setzt alle Werte der figur und der Reihe für Basteln
for (int i=0; i<fiba[1].Get_figurenbainsg()+1; i++)
{if (fiba[i].Get_namereiba() == ComboBox1->Text)
{if (ComboBox2->Text == fiba[i].Get_namefiba())
{Edit4->Text = fiba[i].Get_namefiba();
Edit1->Text = fiba[i].Get_namereiba();
Edit5->Text = fiba[i].Get_anzahlfiba();
Edit6->Text = fiba[i].Get_wertfiba();
}
if (fiba[i].Get_anzahlfiba() > 0)
{avoll++;}
else {aunvoll++;}
}
Edit2->Text = avoll;
Edit3->Text = aunvoll;
}
//setzt alle Werte der figur und der Reihe für Puzzle
for (int i=0; i<fipu[1].Get_figurenpuinsg()+1; i++)
{if (fipu[i].Get_namereipu() == ComboBox1->Text)
{if (ComboBox2->Text == fipu[i].Get_namefipu())
{Edit4->Text = fipu[i].Get_namefipu();
Edit1->Text = fipu[i].Get_namereipu();
Edit5->Text = fipu[i].Get_anzahlfipu();
Edit6->Text = fipu[i].Get_wertfipu();
}
if (fipu[i].Get_anzahlfipu() > 0)
{avoll++;}
else {aunvoll++;}
}
Edit2->Text = avoll;
Edit3->Text = aunvoll;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
//Werte setzen für Figur für Gummi
for (int i=0; i<figu[1].Get_figurenguinsg()+1; i++)
{if (figu[1].Get_namereigu() == ComboBox1->Text)
{if (ComboBox2->Text == figu[i].Get_namefigu())
{figu[i].Set_wertfigu (StrToFloat (Edit6->Text));
figu[i].Set_anzahlfigu (StrToInt(Edit5->Text));
figu[i].Set_namefigu ((Edit4->Text));
}
}
}
//Werte setzen für Figur für Basteln
for (int i=0; i<fiba[1].Get_figurenbainsg()+1; i++)
{if (fiba[1].Get_namereiba() == ComboBox1->Text)
{if (ComboBox2->Text == fiba[i].Get_namefiba())
{fiba[i].Set_wertfiba (StrToFloat (Edit6->Text));
fiba[i].Set_anzahlfiba (StrToInt(Edit5->Text));
fiba[i].Set_namefiba ((Edit4->Text));
}
}
}
//Werte setzen für Figur für Puzzle
for (int i=0; i<fipu[1].Get_figurenpuinsg()+1; i++)
{if (fipu[1].Get_namereipu() == ComboBox1->Text)
{if (ComboBox2->Text == fipu[i].Get_namefipu())
{fipu[i].Set_wertfipu (StrToFloat (Edit6->Text));
fipu[i].Set_anzahlfipu (StrToInt(Edit5->Text));
fipu[i].Set_namefipu ((Edit4->Text));
}
}
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button4Click(TObject *Sender)
{
//Dynamische ermittlung von HARTGUMMI unvollständig
for (int j=0; j<ComboBox1->Items->Count; j++)
{for (int i=0; i<figu[1].Get_figurenguinsg(); i++)
{if (ComboBox1->Items->Strings[j] == figu[i].Get_namereigu())
{if (q == false)
{if (figu[i].Get_anzahlfigu() < 1)
{figurvoll[j] = 1;
q=true;
}
}
q = false;
}
}
}
int o=0;
for (int i=0; i<10; i++)
{o = o + figurvoll[i];}
figu[1].Set_reiguunvoll(o);
Edit10->Text = figu[1].Get_reiguunvoll ();
//ermittlung von HARTGUMMI vollständig
Edit9->Text = 3 - figu[1].Get_reiguunvoll ();
//werte wieder auf 0 setzen
for (int i=0; i<10; i++)
{figurvoll[i] = 0;
}
//Dynamische ermittlung von BASTELN unvollständig
for (int j=0; j<ComboBox1->Items->Count; j++)
{for (int i=0; i<fiba[1].Get_figurenbainsg(); i++)
{if (ComboBox1->Items->Strings[j] == fiba[i].Get_namereiba())
{if (q == false)
{if (fiba[i].Get_anzahlfiba() < 1)
{figurvoll[j] = 1;
q=true;
}
}
q = false;
}
}
}
o=0;
for (int i=0; i<10; i++)
{o = o + figurvoll[i];}
fiba[1].Set_reibaunvoll(o);
Edit12->Text = fiba[1].Get_reibaunvoll ();
//ermittlung von BASTELN vollständig
Edit11->Text = 3 - fiba[1].Get_reibaunvoll ();
//werte wieder auf 0 setzen
for (int i=0; i<10; i++)
{figurvoll[i] = 0;
}
//Dynamische ermittlung von PUZZLE unvollständig
for (int j=0; j<ComboBox1->Items->Count; j++)
{for (int i=0; i<fipu[1].Get_figurenpuinsg(); i++)
{if (ComboBox1->Items->Strings[j] == fipu[i].Get_namereipu())
{if (q == false)
{if (fipu[i].Get_anzahlfipu() < 1)
{figurvoll[j] = 1;
q=true;
}
}
q = false;
}
}
}
o=0;
for (int i=0; i<10; i++)
{o = o + figurvoll[i];}
fipu[1].Set_reipuunvoll(o);
Edit14->Text = fipu[1].Get_reipuunvoll ();
//ermittlung von PUZZLE vollständig
Edit13->Text = 3 - fipu[1].Get_reipuunvoll ();
//werte wieder auf 0 setzen
for (int i=0; i<10; i++)
{figurvoll[i] = 0;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button5Click(TObject *Sender)
{
//wert für alle reihen setzen
figu[1].Set_wertguinsg();
fiba[1].Set_wertbainsg();
fipu[1].Set_wertpuinsg();
figu[1].Set_figureninsg();
figu[1].Set_wertinsg();
Edit7->Text = figu[1].Get_figureninsg ();
Edit8->Text = figu[1].Get_wertinsg();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button6Click(TObject *Sender)
{
fipu[1].Set_kosteninsg ();
fipu[1].Set_gewichtinsg ();
Edit15->Text = fipu[1].Get_gekauft ();
Edit16->Text = fipu[1].Get_kosteninsg ();
Edit17->Text = fipu[1].Get_paletten ();
Edit18->Text = fipu[1].Get_gewichtinsg ();
Edit19->Text = fipu[1].Get_kosten ();
Edit20->Text = fipu[1].Get_gewicht();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button7Click(TObject *Sender)
{
fipu[1].Set_gekauft (StrToInt(Edit15->Text));
fipu[1].Set_paletten (StrToInt(Edit17->Text));
fipu[1].Set_kosten (StrToFloat(Edit19->Text));
fipu[1].Set_gewicht (StrToInt(Edit20->Text));
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button8Click(TObject *Sender)
{
schocko.Set_schockohaelftenvorhanden ();
schocko.Set_schockogeinsg ();
Edit21->Text=schocko.Get_schockoge ();
Edit22->Text=schocko.Get_schockogeinsg ();
Edit23->Text=schocko.Get_schockohaelften ();
Edit24->Text=schocko.Get_schockohaelftengegessen ();
Edit25->Text=schocko.Get_schockohaelftenvorhanden ();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button9Click(TObject *Sender)
{
schocko.Set_schockoge (StrToFloat (Edit21->Text));
schocko.Set_schockohaelften (StrToInt (Edit23->Text));
schocko.Set_schockohaelftengegessen (StrToInt (Edit24->Text));
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCloseQuery(TObject *Sender, bool &CanClose)
{
//Alt+F4 wird verhindert
CanClose = false;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
//der lauftext unten und oben der titel
AnsiString first = AppText.SubString(1,1);
AppText.Delete(1,1);
AppText = AppText + first;
Application->Title = AppText;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button10Click(TObject *Sender)
{
if (xx==true)
{Form2->Visible=true;
xx=false;
}
else {Form2->Visible=false;
xx=true;}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Image1Click(TObject *Sender)
{
Form3->Visible=true;
Form1->Visible=false;
Form2->Visible=false;
Form3->Timer1->Enabled = true;
}
//---------------------------------------------------------------------------