MAISIZUN
Messages postés1Date d'inscriptionlundi 8 septembre 2003StatutMembreDernière intervention 8 septembre 2003
-
8 sept. 2003 à 09:31
yvemoreau
Messages postés308Date d'inscriptionmardi 11 juin 2002StatutMembreDernière intervention26 septembre 2008
-
15 sept. 2003 à 18:08
Salut, je recherche la solution pour saisir dans un masque un pourcentage et calculer automatiquement sa correspondance en coefficient. A chaque saisie de chiffre le coefficient change.
Le problème, avec un masque 00.00, lorsque j'efface tout et qu'il ne reste que un chiffre exemple '3 . ' , delphi ne peut pas le transcrire en FLOAT à cause de l'espace entre le 3 et le point pour le calcul du coeff.
Merci du coup de main.
yvemoreau
Messages postés308Date d'inscriptionmardi 11 juin 2002StatutMembreDernière intervention26 septembre 2008 15 sept. 2003 à 18:08
procedure TForm1.MaskEdit1Change(Sender: TObject);
var
M:String[5];
begin
M:=MaskEdit1.Text;
if not(M[1] in ['1','2','3','4','5','6','7','8','9','0'])then M[1]:='0';
if not(M[2] in ['1','2','3','4','5','6','7','8','9','0'])then M[2]:='0';
if not(M[4] in ['1','2','3','4','5','6','7','8','9','0'])then M[4]:='0';
if not(M[5] in ['1','2','3','4','5','6','7','8','9','0'])then M[5]:='0';
MaskEdit1.Text:=M;
end;
//test
procedure TForm1.Button1Click(Sender: TObject);
var
base,reste:Integer;// pour test seulement !
begin
base:=StrToInt(MaskEdit1.Text[1]+MaskEdit1.Text[2]);
reste:=StrToInt(MaskEdit1.Text[4]+MaskEdit1.Text[5]);
label1.Caption:=IntToStr(base);
label2.Caption:=IntToStr(reste);
end;
comme ça tu t'assure qu'il y ait toujours quelque chose de valide dans le cas où tu n'accepte que les chiffres bien entendu.