Soyez le premier à donner votre avis sur cette source.
Vue 8 684 fois - Téléchargée 614 fois
var ListCP :TStringList; procedure TForm1.FormCreate(Sender: TObject); begin ListCP := TstringList.Create; if fileexists('CpList.txt') then ListCP.LoadFromFile('CpList.txt') else begin MessageDlg('Fichier "CpList.txt" non trouvé.',mtError,[mbOk],0); application.Terminate; end; end; procedure TForm1.Edit4Exit(Sender: TObject); var i :Integer; CodePostal :String; Commune :String; begin if length(Edit4.Text)<>5 then exit; ComboBox3.Clear; // permet suivant le code postal, d'aller directement plus loin dans la liste, // ce qui divise le temps de parcours de la liste if(Edit4.Text > '21121')then i:=7876 else if(Edit4.Text > '38350')then i:=15758 else if(Edit4.Text > '57370')then i:=23638 else if(Edit4.Text > '71960')then i:=31513 else if(Edit4.Text > '99100')then i:=39185 else i:=0; while not ((i=ListCP.Count) or (CodePostal=Edit4.Text))do begin i:=i+1; Codepostal := Copy(ListCP.Strings[i], 1, 5); // récupération du code postal end; while not ((i=ListCP.Count) or (Codepostal<>Edit4.Text))do begin Codepostal := Copy(ListCP.Strings[i], 1, 5); // récupération du code postal Commune := Copy(ListCP.Strings[i], 7, Length(ListCP.Strings[i])); // récupération du nom de la comune if((Codepostal=Edit4.Text) and (Edit4.Text < '98891'))then begin ComboBox3.Items.Add(Commune); // ajout de la commune dans la combobox Edit6.Text := 'France'; end else if((Codepostal=Edit4.Text) and (Edit4.Text > '98891'))then Edit6.Text := Commune; i:=i+1; end; ComboBox3.Text := ComboBox3.Items[0]; end;
ça te va ?
Dans mon premier source, il fallait faire plus de 39000 fois le tour de la boucle pour trouver, maintenant il en faut moins de 20 :) merci la dichotomie (je n'y avait pas pensé avant, merci debiars)
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.