Calcule les taxes

Description

Programme permettant de calculer les taxes. Il est possible d'y ajouter un rabais ainsi que de modifier le pourcentage de taxe ajouté. Code intéressant pour les débutants comme moi.
J'aurai besoin d'aide pour amélioré:
-lorsque je met un point, le transformer en virgule lorsque l'on appui sur le bouton pour calculer.
- Trouvé un moyen pour raccourcir le code ( sur quoi je peux jouer pour le diminuer)
-Ajuster automatiquement les EditBox si le nombre est trop grand
Merci de votre aide

Source / Exemple :


TTaxes *Taxes;
float TPS, TVQ, Montant,  Pour, Nb1, Nb2;
int Rabais;
String VarTPS,Prix,VarTPS2,VarTVQ;

//---------------------------------------------------------------------------
__fastcall TTaxes::TTaxes(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TTaxes::Button1Click(TObject *Sender)
{                                                                //
if(Edit5->Text=="")                                              //
{                                                                //
Label9->Visible=true;                                            //
}                                                                //
else                                                             //
{                                                                //
Label9->Visible=false;                                           //
}                                                                //
        if(Edit6->Text=="")                                      //
        {                                                        //
        Label10->Visible=true;                                   // Vérifie si il y a un prix et les taxes sinon
        }                                                        // une étoile apparet
        else                                                     //
        {                                                        //
        Label10->Visible=false;                                  //
        }                                                        //
                                                                 //
                if(Edit1->Text=="")                              //
                {                                                //
                Label8->Visible=true;                            //
                }                                                //
                else                                             //
                {                                                //
                Label8->Visible=false;                           //
                }                                                //
                        

if( Edit5->Text=="" || Edit6->Text=="" || Edit1->Text=="")       //
{                                                                //
 Label7->Caption="Remplir les champs avec une étoile";           // Affiche un message si
 Label7->Visible=true;                                           // il n'y a pas de prix et des taxes
 return;                                                         //
}                                                                //
                                                                 //
Label7->Visible=false;                                           //

VarTPS=Edit5->Text;
VarTVQ=Edit6->Text;
Prix=Edit1->Text;

Edit5->Text = StringReplace(Edit5->Text, ".", ",", TReplaceFlags() << rfReplaceAll);
Edit6->Text = StringReplace(Edit6->Text, ".", ",", TReplaceFlags() << rfReplaceAll);
Edit1->Text = StringReplace(Edit1->Text, ".", ",", TReplaceFlags() << rfReplaceAll);

float VarTPS, VarTVQ, Prix;

VarTPS= StrToFloat ( Edit5->Text);                               //
VarTVQ= StrToFloat ( Edit6->Text);                               // Prend la valeur du prix et des taxes
Prix = StrToFloat ( Edit1->Text);                                //

if( Rabais==1 && Edit7->Text=="" ||Rabais==2 && Edit7->Text=="") //
{                                                                //
 Label12->Visible=true;                                          //
 Label7->Visible=true;                                           //  Si $ ou % est coché mais qu'il n'y a pas de nombre
 Label7->Caption="Mettre un motant comme rabais.";               //  comme rabais, affiche message et une étoile
 return;                                                         //
}

if( Rabais==1&& Edit7->Text!="" ||Rabais==2 && Edit7->Text!="")  //
{
 String Rabais2;                                                 //  Contraire du précédant
 Label12->Visible=false;
 Rabais2=Edit7->Text;
 Edit7->Text = StringReplace(Edit7->Text, ".", ",", TReplaceFlags() << rfReplaceAll);
}

float Rabais2;

if( Rabais==1&& Edit7->Text!="" ||Rabais==2 && Edit7->Text!="")  //
{
 Rabais2=StrToFloat(Edit7->Text);
}

if( Prix < Rabais2 && Rabais==1)                                   //
{                                                                  //
 Label7->Visible=true;                                             //
 Label7->Caption="Le rabais ne peut être plus grand que le prix";  //
 Edit2->Text="";                                                   //
 Edit3->Text="";                                                   //
 Edit4->Text="";                                                   //
 return;                                                           //
}                                                                  //
                                                                   //   Si le rabais en $ est + grand que le prix ou que
if( Rabais2 >100 && Rabais==2)                                     //   le rabais en % est + grand que 100, affiche message
{                                                                  //
 Label7->Visible=true;                                             //
 Label7->Caption="Le rabais ne peut pas dépacer 100%";             //
 Edit2->Text="";                                                   //
 Edit3->Text="";                                                   //
 Edit4->Text="";                                                   //
 return;                                                           //
}                                                                  //

if(Rabais==1)
{                                                                  //
 Prix=FoncRabais1 ( Prix, Rabais2);                                //
}                                                                  //
                                                                   //
if(Rabais==2)                                                      //
{
Prix=FoncRabais2 ( Prix, Rabais2);                                                                 // Différente combinaison si $ ou % ou auncun est sélectionné                                                  //
}                                                                  //
                                                                   //
if(Rabais==0)                                                      //
{                                                                  //
 Label12->Visible=false;                                           //
 Edit7->Text="";                                                   //
}

TPS=FoncTPS(Prix, VarTPS);                                         //
Edit2->Text= FormatFloat("#0.00",TPS)+ AnsiString(" $");           //
                                                                   //
TVQ=FoncTVQ(Prix,TPS,VarTVQ);                                      //   Calcule taxe plus affiche en format 0,00 + $
Edit3->Text= FormatFloat("#0.00",TVQ)+ AnsiString(" $");           //
                                                                   //
Montant=Prix+TPS+TVQ;                                              //
Edit4->Text=FormatFloat("#0.00",Montant)+ AnsiString(" $");        //

}
//---------------------------------------------------------------------------
void __fastcall TTaxes::CheckBox1Click(TObject *Sender)
{
if(CheckBox1->State==cbUnchecked)                    // modifier les taxes
{
 Edit5->Enabled=false;
 Edit6->Enabled=false;
}
else
{
 Edit5->Enabled=true;
 Edit6->Enabled=true;
}
}
//---------------------------------------------------------------------------

void __fastcall TTaxes::Timer1Timer(TObject *Sender)
{
if(Edit1->Text=="")                                    // effacer les valeurs
{                                                      // si la case prix est vide
 Edit2->Text="";
 Edit3->Text="";
 Edit4->Text="";
}

}
//---------------------------------------------------------------------------

void __fastcall TTaxes::Button2Click(TObject *Sender)
{
Close();                                            // ferme le programme
}
//---------------------------------------------------------------------------

void __fastcall TTaxes::RadioGroup1Click(TObject *Sender)
{
if( RadioGroup1->ItemIndex==0)                     // vérifie si $ ou % ou aucun
{                                                  // est sélecionné et attribu une valeur
 Rabais=0 ;
}
if( RadioGroup1->ItemIndex==1)
{
 Rabais=1 ;
}
if( RadioGroup1->ItemIndex==2)
{
 Rabais=2 ;
}

}
//---------------------------------------------------------------------------

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.