Bonjours à tous !
Je veux donner un seul nom [Name] à plusieurs objets (par exemple : Labels) comme je l'ai fais déjà avec Visual Basic. est-ce possible ?
Merci d'avance !
citrovix![]()
Bonjours à tous !
Je veux donner un seul nom [Name] à plusieurs objets (par exemple : Labels) comme je l'ai fais déjà avec Visual Basic. est-ce possible ?
Merci d'avance !
citrovix![]()
Impossible et heureusement, ce ne pourrait qu'être source de conflit.
Salut et Bienvenue sur Developpez.com
Avant de répondre à ta question, il serait plus judicieux de renommer le titre de ton problème!
En effet, un titre explicite donne plus envie de lire que celui que tu viens de marquer (avis personnel).
Ensuite, pour ta question, à ma connaissance cela n'est possible.
Tu peux renommer le caption de tes labels pour avoir le même nom, mais leur donner le même name, ca non.
Voilà
@ +
Salut
Pour accéder facilement, à une liste de composants, utilise une TObjectList (unité contnrs). Elle est très facile à utiliser et elle est faite pour ça
plus d'infos avec![]()
![]()
Pedro
Aucune réponse aux sollicitations techniques par MP
Faut pas attendre d'en avoir besoin pour s'en servir... (Lucien Stéphane)
Les pages Source C'est bon. Mangez-en!
Le défi Delphi
Règles du forum - FAQ Delphi - Pensez au chtit
Aéroclub Bastia Saint-Exupéry
bonjour
Si tu souhaites donner le même nom à plusieurs composants, c'est que tu envisages un traitement quelconque grace à cela.
Alors, explique plutot ce que tu veux faire comme traitement et la solution te sera surement donnée sans cette homonymie impossible![]()
Pascal
sans oublier le tableau, moins gourmand en mémoire que le TObjectList !
Code : Sélectionner tout - Visualiser dans une fenêtre à part Labels: array{[min..max]} of TLabel;
Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
. Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !
Merci à vous tous !
je crois que ma question etait mal posée. je vais la reprendre...
je veux utiliser par exemple un tableau de variables i (20 éléments..)
et je veux que la valeur de chaque variable soit affichée dans un Label :
i[1] ----> Label[1]
i[2] ----> Label[2]...
Merci !!
Salut
Jette un oeil à la fonction FindComponent !
Tu as de multiples exemples sur le forum![]()
@+ Claudius
Salut
Le Pb :
On peut se passer de créer le tableau "Label[]" en donnant à la proprité Tag de chacun des tLabels concernés (qu'ils soient posés manuellement sur la fiche, ou créés dynamiquement) une valeur unique distincte par ex: 2129 si celle des autres labels est <>2129 et obtenir l'affichage dans les tLabels en exploitant le tableau components[] , qui lui est déjà en mémoire, comme suit :je veux utiliser par exemple un tableau de variables i (20 éléments..)
et je veux que la valeur de chaque variable soit affichée dans un Label :
i[1] ----> Label[1]
i[2] ----> Label[2]...
Comme le tableau components[] est créé automatiquement par Delphi il semble superflu d'en créer d'autres.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 var TableauValeurs : array[1..20] of integer; procedure AfficheLesValeursDuTableauVersLesLabels; var ic,it : integer; // ic = indice composant, it = indice tableau begin with Form1 do begin ic:=0; it:=Low(TableauValeurs); // borne inférieure du tableau repeat if (components[ic] is tLabel) and ((components[ic] as tLabel).Tag=2129) and (it<=High(TableauValeurs)) then // on fait le transfert d'affichage : begin (components[ic] as tLabel).Caption:=intToStr(TableauValeurs[it]); inc(it); end; inc(ic); until ic>=ComponentCount; end; end;
Ceci n'est qu'une variante parmi les autres possibilités.
Partager