In diesem Visual C + + Programm lernen Sie das Erstellen und Verwenden eigener Funktionen innerhalb von Bibliotheken - sprich Header (.h) und Quellcode-Dateien (.cpp).
//--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "MyTools.h" #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { float bmi=0.0, gewicht=0.0, groesse=0.0; //BMI=Gewicht/(Größe^2) if(Edit1->Text.Length()>0 && Edit2->Text.Length()>0) { groesse=StrToFloat(Edit1->Text); gewicht=StrToFloat(Edit2->Text); if(RadioButton1->Checked) //weiblich { if(groesse!=0) { bmi=gewicht/(groesse*groesse); ShowMessage("Ihr BMI ist " + FloatToStr(bmi)); if(bmi>=40) ShowMessage("Sie haben starke Adipositas!"); else if(bmi>=31) ShowMessage("Sie haben Adipositas!"); else if(bmi>=25) ShowMessage("Sie haben Übergewicht!"); else if(bmi>=19) ShowMessage("Sie haben Normalgewicht!"); else if(bmi<19) ShowMessage("Sie haben Untergewicht!"); } else { ShowMessage("Geben Sie eine gültige Groesse ein!"); } } else if (RadioButton2->Checked) //männlich { if(groesse!=0) { bmi=gewicht/(groesse*groesse); ShowMessage("Ihr BMI ist " + FloatToStr(bmi)); if(bmi>=40) ShowMessage("Sie haben starke Adipositas!"); else if(bmi>=31) ShowMessage("Sie haben Adipositas!"); else if(bmi>=26) ShowMessage("Sie haben Übergewicht!"); else if(bmi>=20) ShowMessage("Sie haben Normalgewicht!"); else if(bmi<20) ShowMessage("Sie haben Untergewicht!"); } else { ShowMessage("Geben Sie eine gültige Groesse ein!"); } } else { ShowMessage("Es wurde kein Radiobutton gedrückt!"); } } } //--------------------------------------------------------------------------- void __fastcall TForm1::Edit1KeyPress(TObject *Sender, System::WideChar &Key) { checkFloatInput(Edit1, Key); } //---------------------------------------------------------------------------
void checkFloatInput(System::WideChar &Key, TEdit *Eingabefeld);
#include <vcl.h> void checkFloatInput(System::WideChar &Key, TEdit *Eingabefeld) { //int(Key)>=AsciiWertvon 0 if((Key>='0' && Key<='9') || (int)Key==8 || Key==',') { //Eingabe ist ok if(Key==',') { if(Eingabefeld->Text.Pos(Key)>0) { Key=0; } } } else { Key=0; } }