Réinitialiser un panel.

Becracker Messages postés 116 Date d'inscription dimanche 12 décembre 2004 Statut Membre Dernière intervention 25 septembre 2005 - 6 sept. 2005 à 19:30
rylryl Messages postés 311 Date d'inscription mardi 9 mars 2004 Statut Membre Dernière intervention 15 décembre 2006 - 7 sept. 2005 à 01:50
Salut les gras,



Juste une ptite kestion.

J'ai un panel qui contient plusieurs labels et edit dont les valeurs
changent. Je voudrais en clickant sur un bouton réinitialiser les
valeurs de tt les lables ou edit à leur valeur d'origine. Si qqn peut
me donner le code du bouton svp.



Merci à tous.

-----------------------------------------

May Delphi and Php change the world ....

4 réponses

ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
6 sept. 2005 à 20:09
Ben écoute, c'est aussi simple que ça :



procedure MyButtonClick(Sender : TObject);

begin

Edit1.Text := 'Text d'origine';

Label1.Caption := 'Text d'origine';

[...]

end ;



Il n'y a pas d'autre solution...

@+
Bonne Prog'
Nico [www.ni69.new.fr]
<hr size ="2" width="100%">
N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient !
0
Becracker Messages postés 116 Date d'inscription dimanche 12 décembre 2004 Statut Membre Dernière intervention 25 septembre 2005
6 sept. 2005 à 20:20
Mé comme ya plusieurs edit et label, je me disais kil yaurai une bien coutre méthode. Mais merci kan même pour la réponse.

-----------------------------------------

May Delphi and Php change the world ....
0
ni69 Messages postés 1418 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 5 juillet 2010 12
6 sept. 2005 à 20:41
J'ai bien une autre solution à te proposer, mais à ce moment là, il faut que le texte soit le même dans tous tes Edits et Labels :



procedure TForm1.MyButtonClick(Sender: TObject);

var

i : integer;

begin

for i := 0 to ComponentCount-1 do begin // Parcours tous les composants de la fiche

if (Components[i] as TControl).Parent = Panel1 then begin // Si ils sont contenus dans Panel1,

if Components[i] is TEdit then (Components[i] as TEdit).Text := 'Texte Initial'; // On change le texte des Edits

if Components[i] is TLabel then (Components[i] as TLabel).Caption : = 'Texte Initial'; // On change le texte des Labels


end;

end;

end;

@+
Bonne Prog'
Nico [www.ni69.new.fr]
<hr size="2" width="100%">
N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient !
0
rylryl Messages postés 311 Date d'inscription mardi 9 mars 2004 Statut Membre Dernière intervention 15 décembre 2006 1
7 sept. 2005 à 01:50
Bonjour, c'est une bonne idée ni69 !
En la modifiant un peu, c'est ok.


EEdit : array of Tedit;
LLabel : array of tlabel;
EditText : array of string;
LabelCaption : array of string;
...
procedure TForm1.Button1Click(Sender: TObject);
var
i : integer;
begin
for i:=0 to Length(EEdit)-1 do begin//Pour les TEdits
EEdit[i].text:=EditText[i];// On change le texte
end;
for i:=0 to Length(LLabel)-1 do begin//Pour lesTLabels
LLabel[i].Caption:=LabelCaption[i];// On change le caption
end;
end;
...
procedure TForm1.FormCreate(Sender: TObject);
var
i,j,k : integer;
begin
j:= 1;
k:= 1;
for i := 0 to ComponentCount-1 do begin // Parcours tous les composants de la fiche
if (Components[i] as TControl).Parent = Panel1 then begin // Si ils sont contenus dans Panel1,
if Components[i] is TEdit then begin// SI des TEdits
SetLength(EditText,j);
EditText[j-1]:=TEdit(Components[i]).Text;// On sauvegarde son texte
SetLength(EEdit,j);
EEdit[j-1] :=TEdit(Components[i]);
inc(J);
end;
if Components[i] is TLabel then begin// SI des TLabels
SetLength(LabelCaption,k);
LabelCaption[k-1]:=TLabel(Components[i]).Caption;// On sauvegarde son "caption"
SetLength(LLabel,k);
LLabel[k-1] :=TLabel(Components[i]);// On sauvegarde le composant correspondant
inc(k);
end;
end;
end;
end;


A+
ryl...
0
Rejoignez-nous