Création d'edit en dynamique

k3ti0 Messages postés 17 Date d'inscription mercredi 5 septembre 2007 Statut Membre Dernière intervention 7 mai 2008 - 6 mai 2008 à 14:33
k3ti0 Messages postés 17 Date d'inscription mercredi 5 septembre 2007 Statut Membre Dernière intervention 7 mai 2008 - 7 mai 2008 à 17:00
Bonjour a tous
je dois réaliser un interface graphique avec des edits en dynamique.Pour récuperer des valeurs dans une base de données.
Mais j'arrive pas à récuperer ou a changer les propriétés des edits crées dynamiquement et j'arrive pas a mettre un nom aux edits.
Voici la création des edits 

for i:=0 to 8 do
   begin
      for j:=0 to 3 do
      begin
         With TEdit.Create(Form3.ScrollBox1) do begin
         inherited;
            Parent := Form3.ScrollBox1;
            //name:='fjhgi'+IntToStr(i+j);
            Left := 50+100*j;
            height := 21 ;
            top := 30+(35*i) ;
            width:=95;
            Tag:=1;
           name:='Etape+IntToStr(i+j); //ici il me dis que Etape1 existe deja
         end;
      end;
      With TLabel.Create(Form3.ScrollBox1) do begin
         Parent := Form3.ScrollBox1;
         Left := 8;
         height := 13 ;
         top := 35+(35*i) ;
         width:=30;
         Caption:='Etape'+IntToStr(i+1);
         Name:='LblEtape'+IntToStr(i+1);
      end;
   end;
   for k:=0 to 4 do
      begin
      With TLabel.Create(Form3.ScrollBox1) do begin
         Parent := Form3.ScrollBox1;
         Left := 80+k*100;
         height := 13 ;
         top := 10 ;
         width:=30;
         Caption:='Param'+IntToStr(k+1);
         Name:='LblParam'+IntToStr(k+1);
      end;
   end;

Merci de votre aider.

7 réponses

dominique.stock Messages postés 436 Date d'inscription vendredi 7 novembre 2003 Statut Membre Dernière intervention 8 octobre 2008 7
6 mai 2008 à 14:40
Bonjour,
Pour le nom : inttostr(i+j) je ferais plutôt :inttostr(i)+inttostr(j) là le nom sera unique...

Dom
0
k3ti0 Messages postés 17 Date d'inscription mercredi 5 septembre 2007 Statut Membre Dernière intervention 7 mai 2008
6 mai 2008 à 14:55
Merci pour le nom ca marche j'avais pas vu que j'avais 2 fois le même nom.
Mais j'ai toujours le probleme pour récuperer les variables dans les édits ou affecter les edits.
Merci de votre aide
0
JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 14
6 mai 2008 à 15:09
Tu te sers du nom du composant après sa création ?
0
Cirec Messages postés 3833 Date d'inscription vendredi 23 juillet 2004 Statut Modérateur Dernière intervention 18 septembre 2022 50
6 mai 2008 à 15:11
Salut

utilise un tableau .. ça te permettera d'acceder par la suite aux TEdit

Type
TEditArray: Array[0..xx] of TEdit;
ou tableau Dynamique

Type
TDynEditArray: Array Of TEdit;

Var EditArray : TEditArray;

For I := 0 to xx do
Begin
  EditArray[I] := TEdit.Create(Self);
  With EditArray[I] do
  Begin
    Parent := ScrollBox1;
    // etc etc
  End;
End;

Et ensuite tu peux y acceder par la même manière:
  EditArray[1].Text := 'blablabla';
 
@+
Cirec

<hr siz="" />
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 14
6 mai 2008 à 15:18
c'est là où je voulais en venir ^^
Pas besoin du nom du compo à mon avis dans la création dynamique.
0
k3ti0 Messages postés 17 Date d'inscription mercredi 5 septembre 2007 Statut Membre Dernière intervention 7 mai 2008
6 mai 2008 à 15:43
Merci bien je vais essayer ca
0
k3ti0 Messages postés 17 Date d'inscription mercredi 5 septembre 2007 Statut Membre Dernière intervention 7 mai 2008
7 mai 2008 à 17:00
Merci bien ca marche bien
Par contre je rencontre un soucis quand je crée une ligne de edit et que j'arrive en bas de ma ScrollBox et que je descends ma ScrollBox il va me crée un edit qui est beaucoup plus bas que les autres .Le top que j'affecte est le top de la fenetre fixe et moi je voudrait que ca soit le top de tout ma ScrollBox.

Merci de votre aide
0
Rejoignez-nous