Convertisseur euros/francs et francs/euros avec taux changeable

Description

Il sagit d'un convertisseur euros plutot banal avec la possiblité de changer le taux de convertion. (C'est mon 1er programme soyez indulgent!!!!!)

Source / Exemple :


'**************************************************************
'*                                    Convertisseur Franc<->Euros                            
'*                                         avec taux changeable                                 
'*                                                                                                         
'*                                                                                                         
'*   Elements utilisés:                                                                             
'*   - 2 TextBox: txtTaux, txtValeur                                                          
'*   - 3 GroupeBox : gpeTaux, gpeConversion, gpeResultat                         
'*   - 2 RadioButton : rdbFrancEuro, rdbEuroFranc                                       
'*   - 3 Label : lblConvertion, lblUnite, lblResultat                                       
'*   - 1 Button : btnConvertir
'*   - 1 Timer : Timer                                                                    
'*                                                                                                         
'**************************************************************

    Private Sub btnConvertir_Click(ByVal sender As System.Object, _
                              ByVal e As System.EventArgs) _
                              Handles btnConvertir.Click

        'Declaration des variables
        Dim Taux As String
        Dim Euro As String
        Dim Franc As String
        Dim NumTaux As Double
        Dim NumEuro As Double
        Dim NumFranc As Double

        'Met dans La variable Taux le contenu de txtTaux en remplacant 
        'le caractère "." par ","
        Taux = txtTaux.Text.Replace(".", ",")

        'Convertion de la variable Taux (de type String = Chaine de caractères)
        'vers une nouvelle variable NumTaux 
        '(de type Double = numérique codée sur 8 octets)
        NumTaux = CType(Taux, Double)

        'Choix du type de convertion Francs/Euros ou Euros/Francs
        If rdbFrancEuro.Checked = True Then
            Franc = txtValeur.Text.Replace(".", ",")
            NumFranc = CType(Franc, Double)
            'Calcul de la convertion
            NumEuro = NumFranc / NumTaux
            'Convertion de la variable NumEuro 
            '(de type Double = numérique codée sur 8 octets)
            'vers une nouvelle variable Euro (de type String = Chaine de 
            'caractères)
            Euro = NumEuro.ToString
                lblResultat.Text = Euro & " ?"
        Else
            Euro = txtValeur.Text.Replace(".", ",")
            NumEuro = CType(Euro, Double)
            'Calcul de la convertion
            NumFranc = NumEuro * NumTaux
            Franc = NumFranc.ToString
            lblResultat.Text = Franc & " Fr"

        End If
    End Sub

    'Autorise seulement les touches numériques et le point dans txtValeur 
    'et txtTaux 
    Private Sub TestTouches(ByVal sender As Object, _
    ByVal e As System.Windows.Forms.KeyPressEventArgs) _
    Handles txtTaux.KeyPress, _
                txtValeur.KeyPress

        'Si la touche est différente d'un touche numérique (0 à 9) 
        'ou du point (Asc(e.KeyChar) = 46) ou de la touche back
        'Alors on annule l'action (Appui sur une touche)
        If e.KeyChar.IsDigit(e.KeyChar) = False _
        And Asc(e.KeyChar) <> 46 _
        And Asc(e.KeyChar) <> System.Windows.Forms.Keys.Back Then
            e.Handled = True
        End If
    End Sub

    'Scrutation de l'état des radio boutons pour définir la valeur de lblUnite
    Private Sub Timer1_Tick(ByVal sender As System.Object, _
                            ByVal e As System.EventArgs) _
                            Handles Timer1.Tick

        'Détermine l'unitée qui sera affichée sur lblUnite
        If rdbFrancEuro.Checked = "true" Then
            lblUnite.Text = "Fr"
        Else
            lblUnite.Text = "?"
        End If

    End Sub

End Class

Conclusion :


Mise à jour:
12/04/03:
-Optimisation des commentaires
-Définition de l'ordre de tabulation

13/04/03:
-Supression des message d'erreurs si les données rentrées dans les TextBox
ne sont pas de type numérique
-Ajout d'une fonction qui autorise ou non des caractères dans les TextBox
=>Allégement du code

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.