Probelme de boucle

Signaler
Messages postés
58
Date d'inscription
dimanche 19 janvier 2003
Statut
Membre
Dernière intervention
9 mars 2005
-
Messages postés
58
Date d'inscription
dimanche 19 janvier 2003
Statut
Membre
Dernière intervention
9 mars 2005
-
bonjour quel est le probleme ? car quand je compile il me fait que pour la premiere lettre et la derniere ?
meric d'avance
procedure TForm1.Button2Click(Sender: TObject);

var
lettre : string;
i :integer;
valeuractuelle :integer;
begin
valeuractuelle:=1;
for valeuractuelle:=1 to 25 do
begin
i:=edit8.SelStart;
lettre:='';
lettre:=Copy(Edit8.Text,valeuractuelle,valeuractuelle);
end;

end;

merci

6 réponses

Messages postés
41
Date d'inscription
vendredi 7 février 2003
Statut
Membre
Dernière intervention
23 juin 2007

Explique se que tu veux faire car je ne comprend pas tout à ton code
Messages postés
58
Date d'inscription
dimanche 19 janvier 2003
Statut
Membre
Dernière intervention
9 mars 2005

je ve remplir un formulaire web de facon automatique et docn poru cache lettre de l'edit il reconnait la touche a entre dans le cadre du formulaire ,.. mais voila avec cette boucle sa focntionne mais il "tape" dans el formulaire que la premiere et la derniere lettre de l'edit
docn je voudrai savoir comment faire pour qu'il detecte tout ?

merci d'avance
Messages postés
1725
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
11 avril 2021
8
Je vais essayer de te détailler ce qui cloche dans ton code :

var
lettre : string;
i :integer;
valeuractuelle :integer;
begin
valeuractuelle:= 1; // <- inutile, puisque va prendre les valeurs 1 à 25
for valeuractuelle: =1 to 25 do
begin
i:= edit8.SelStart; // <- vaut toujours 0, et tu ne t'en sers pas
lettre: =''; // <- inutile
lettre:=Copy(Edit8.Text,valeuractuelle,valeuractuelle);
end;// dans ta boucle, tu changes 25 fois d'avis !
end;
Résultat, tu obtiens la copie de Edit8 à partir de la position 25, longueur 25 caractères !

Tu vas sûrement y arriver, mais il va te falloir un peu étudier le sujet (la programmation). Bon courage ! :approve)
Messages postés
58
Date d'inscription
dimanche 19 janvier 2003
Statut
Membre
Dernière intervention
9 mars 2005

sa ne copie pas 25 foi le dernier caractere (le 25 ) mais uen foi le premier et une foi le dernier , et je fais sa pour etudier l'edit et simuler les touche avec key_event ,.. donc comment pourrais-je faire pour qu'il me copie de la premiere a la derniere lettre ?

merci d'avance ;)
Messages postés
1725
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
11 avril 2021
8
Pour récupérer une à une les lettres dans ton Edit :

procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer;
  Lettre: Char;
begin
  for i := 1 to Length(Edit1.Text) do
  begin
    Lettre := Edit1.Text[i];
    //>>>>> ici traitement du Char récupéré  <<<<<
    // tu peux vérifier que ça marche en affichant  à chaque fois:
    ShowMessage(Lettre); // <- inutile, c'est pour la vérif
  end;
end;


Bons débuts ! :big)
Messages postés
58
Date d'inscription
dimanche 19 janvier 2003
Statut
Membre
Dernière intervention
9 mars 2005

Merci, c est ce qu il me manquait pour finir mon programme de remplissage automatique de formulaire. Meric encore, @++