Quand vous créez des compos en mode runtime, il est difficile d'y faire référence dans votre code...
Ok?
Bon!
Mais difficile n'est pas impossible.
...Et puis, finalement, c'est très facile!
Source / Exemple :
unit Unit1;
interface
uses
Windows, Messages, StdCtrls, Classes, Controls, Forms, Dialogs, ExtCtrls;
type
TForm1 = class(TForm)
Panel1 : TPanel;
Btn_Creer : TButton;
Btn_Ecrire: TButton;
procedure Btn_CreerClick(Sender: TObject);
procedure Btn_EcrireClick(Sender: TObject);
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Btn_CreerClick(Sender: TObject);
var
NewEdit : TEdit;
begin
if Panel1.ComponentCount=0 then begin
NewEdit := TEdit.Create(Panel1);
NewEdit.Parent := Panel1;
NewEdit.Left := 4;
NewEdit.Top := 4; end
else ShowMessage('L''Edit est déjà créé!');
end;
procedure TForm1.Btn_EcrireClick(Sender: TObject);
begin
if Panel1.ComponentCount = 1 then begin
{Le TEdit est identifié en tant que compos indexé du TPanel}
(Panel1.Components[0] as TEdit).Text := 'Bonjour !'; end
else ShowMessage('L''Edit n''est pas encore créé!');
end;
end.
Conclusion :
Je me demande si je n'enfonce pas une porte ouverte...
En tout cas, je n'avais rien trouvé.
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.