09 Fév2016
Convertir un montant 2
Objectif : Manipuler les contrôles standards : RADIOBUTTON, BUTTON
Réaliser une application qui permet de réaliser la conversion EURO/DH et DH/EURO comme suit :
- Le clic sur le bouton « Convertir » permet de convertir le montant de DH ou EURO vers DH ou EURO selon l’option choisie.
- Prévoir les cas d’erreurs (champ vide, champ invalide, opération non sélectionnée,……)
- Le clic sur le bouton « Annuler » permet de vider tous les champs.
Note
- Utiliser la propriété CHECKED du contrôle RADIOBUTTON
- Utiliser l’événement CHECKEDCHANGED du contrôle RADIOBUTTON
Exemple d’exécution 1 :
Exemple d’exécution 2 :
Exemple d’exécution 3 :
NAME des contrôles:
- Form1 : Le formulaire
- text_change : Valeur de change
- text_entree : Montrant en entrée
- text_sortie : Montant en sortie
- label_entree : Étiquette en entrée
- label_sortie : Étiquette en sortie
- button_convertir: Le bouton Convertir
- button_annuler : Le bouton Annuler
- radio1 : Le bouton radio DH->EURO
- radio 2: Le bouton radio EURO->DH
Au chargement du formulaire:
private void Form1_Load(object sender, EventArgs e) { text_change.Select(); }
Au changement de choix du bouton radio DH->EURO:
private void radio1_CheckedChanged(object sender, EventArgs e) { if (radio1.Checked) { label_entree.Text = "DH"; label_sortie.Text = "EURO"; } else { label_entree.Text = ""; label_sortie.Text = ""; } }
Au changement de choix du bouton radio EURO->DH:
private void radio2_CheckedChanged(object sender, EventArgs e) { if (radio2.Checked) { label_entree.Text = "EURO"; label_sortie.Text = "DH"; } else { label_entree.Text = ""; label_sortie.Text = ""; } }
Au clic sur le bouton Convertir:
private void button_convertir_Click(object sender, EventArgs e) { double change,entree; if (text_change.Text == "") MessageBox.Show("Valeur de change vide", "champ vide", MessageBoxButtons.OK, MessageBoxIcon.Error); else if(!double.TryParse(text_change.Text,out change)) MessageBox.Show("Valeur de change invalide", "champ invalide", MessageBoxButtons.OK, MessageBoxIcon.Error); else if(change<=0) MessageBox.Show("Valeur de change doit être positive", "champ négatif", MessageBoxButtons.OK, MessageBoxIcon.Error); else if (text_entree.Text == "") MessageBox.Show("Montant vide", "champ vide", MessageBoxButtons.OK, MessageBoxIcon.Error); else if (!double.TryParse(text_entree.Text, out entree)) MessageBox.Show("Montant invalide", "champ invalide", MessageBoxButtons.OK, MessageBoxIcon.Error); else if (entree < 0) MessageBox.Show("Montant doit être positif", "champ négatif", MessageBoxButtons.OK, MessageBoxIcon.Error); else if (radio1.Checked == false && radio2.Checked == false) MessageBox.Show("Veuillez sélectionner un sens de conversion", "conversion", MessageBoxButtons.OK, MessageBoxIcon.Error); else { if (radio1.Checked) text_resultat.Text = (entree / change).ToString(); else text_resultat.Text = (entree * change).ToString(); } }
Au clic sur le bouton Annuler:
private void button_annuler_Click(object sender, EventArgs e) { text_change.Text = ""; text_entree.Text = ""; text_resultat.Text = ""; radio1.Checked = false; radio2.Checked = false; text_change.Select(); }