Problème avec combobox

Résolu
cs_saravana Messages postés 91 Date d'inscription vendredi 25 mars 2005 Statut Membre Dernière intervention 18 octobre 2007 - 8 août 2005 à 13:31
cs_saravana Messages postés 91 Date d'inscription vendredi 25 mars 2005 Statut Membre Dernière intervention 18 octobre 2007 - 9 août 2005 à 11:24
bonjour a tous je souhaite réaliser un convertisseur de valeurs(cm;mm;m....)
j'ai :
Edit1
Combobox1
Combobox2
button1
et Edit2
je rentre un chiffre dans edit1(ex:2); je choisis la valeur initiale dans le combobox1(ex: cm); je choisis la valeur finale dans combobox2(ex: mm); j'appuie button1 et le résultat (20 mm) doit etre affiché dans l'edit2.
est-ce que quelqun peut m'aider?
merci
bye.

4 réponses

jlen100 Messages postés 1606 Date d'inscription samedi 10 juillet 2004 Statut Membre Dernière intervention 25 juillet 2014 13
8 août 2005 à 15:12
salut,

voici une petite procedure qui repond a ta demande.

procedure TForm1.Button1Click(Sender: TObject);

var resultat:real;

begin

//conversion edit1--->mm

case combobox1.ItemIndex of

0: resultat:= strtofloat(edit1.text)*1000; //m

1: resultat:=strtofloat(edit1.text)*100; //dm

2:resultat:=strtofloat(edit1.text)*10; //cm

3:resultat:=strtofloat(edit1.text); //mm

end ;

//convertion du resultat en l'unite choisie

case combobox2.ItemIndex of

0: resultat: =resultat/1000; //m

1: resultat:= resultat/100;
//dm

2:resultat:=resultat/10;
//cm

3:;


//mm

end ;

edit2.text: =floattostr(resultat);



end;
3
cs_saravana Messages postés 91 Date d'inscription vendredi 25 mars 2005 Statut Membre Dernière intervention 18 octobre 2007
8 août 2005 à 15:59
merci beaucoup ca ma bien avancé, grace a toi g appri deux nouvelles fonctions.
bye
0
jlen100 Messages postés 1606 Date d'inscription samedi 10 juillet 2004 Statut Membre Dernière intervention 25 juillet 2014 13
8 août 2005 à 16:23
salut,

petite precision tu peux transformer cette fonction pour faire une convertion automatique

soit lors de la saisie de Edit1 ou du choix de combobox1et de combobox2.

tu fais:

procedure TForm1.convertion;

var resultat:real;

begin
//conversion edit1--->mm
case combobox1.ItemIndex of

0: resultat:= strtofloat(edit1.text)*1000; //m

1: resultat:=strtofloat(edit1.text)*100; //dm

2:resultat:=strtofloat(edit1.text)*10; //cm

3:resultat:=strtofloat(edit1.text); //mm

end ;

//convertion du resultat en l'unite choisie

case combobox2.ItemIndex of

0: resultat: =resultat/1000; //m

1: resultat:= resultat/100; //dm

2:resultat:=resultat/10; //cm

3:;


//mm

end ;

edit2.text: =floattostr(resultat);



end;

dans les evements onchange de edit1 de combobox1 et des combox2 tu appelle la fonction convertion

procedure TForm1.Edit1Change(Sender: TObject);

begin

convertion;

end;

procedure TForm1.ComboBox1Change(Sender: TObject);


begin


convertion;


end;


procedure TForm1.ComboBox2Change(Sender: TObject);


begin


convertion;


end;
0
cs_saravana Messages postés 91 Date d'inscription vendredi 25 mars 2005 Statut Membre Dernière intervention 18 octobre 2007
9 août 2005 à 11:24
merci mais je me suis aidé du premier code pour ajouter d'autres mesures (température,masse,octet)
mais merci de ton aide.
bye
0
Rejoignez-nous