Enregistrer le contenu de tous les tedit dans un fichier

Description

Comment enregistrer le contenu de tous les composants de type TEdit :
- dans un fichier sans avoir à les appeler un par un,
- pouvoir recharger les données en les affectant dans les bons contrôles sans avoir à se préoccuper si la valeur existe ni si le contrôle existe sur la fiche.

Ce procédé est aussi valable pour d'autres composants dont le contenu serait compatible (string, integer, boolean, etc) avec les capacités de lecture/écriture d'un autre composant : le TIniFile.

Source / Exemple :


//Voici la procédure de sauvegarde :
var
  i : integer;
  Ini : TIniFile;
  Edit : TEdit;
begin
  Ini := TIniFile.Create(EditsFileName);
  try
  //parcourir les composants sur la fiche
  for i:=0 to ComponentCount - 1 do
    //si le composant trouvé est du type recherché
    if Components[i] is TEdit then
    begin
      //pour alléger l'écriture (!)
      Edit := TEdit(Components[i]);
      //écrire un entrée avec le nom et le contenu du contrôle
      Ini.WriteString(Section, Edit.Name, Edit.Text);
    end;
    btnVerifyFile.Enabled := True;
  finally
    Ini.Free;
  end;
end;

//et un autre extrait de la procédure de rechargement dans les TEdit
var
  i : integer;
  Ini : TIniFile;
  Edit : TEdit;
begin
  Ini := TIniFile.Create(EditsFileName);
  try
    For i:=0 to ComponentCount - 1 do
      if Components[i] is Tedit then
      begin
        Edit := Components[i] as TEdit;
        Edit.Text := Ini.ReadString(Section, Edit.Name, 'Non trouvé');
      end;
  finally
    Ini.Free;
  end;
end;

Conclusion :


Pour l'intégralité du code (n'est-ce pas Lucien [;-)]), le fichier .zip est joint.

Code source réalisé à la demande BenXBox.

Codes Sources

A voir également

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.