Component avec TPanel

bececle Messages postés 3 Date d'inscription samedi 1 octobre 2005 Statut Membre Dernière intervention 16 août 2006 - 15 août 2006 à 18:22
Guillemouze Messages postés 991 Date d'inscription samedi 25 octobre 2003 Statut Membre Dernière intervention 29 août 2013 - 16 août 2006 à 13:53
J'essaie de faire un component qui contient un TPanel. Dans mon create de mon component, fait aussi un create de mon TPanel. Celà donne exactement l'effet que je veux donner, mais lorsque je suis en mode design et que j'ajoute un autre component (TEdit )dans mon TPanel ( comme on le fait habituellement avec un TPanel normal ), ce TEdit ne s'enrigistre pas dans mon fichier DMF. Je voix mon TEdit dans mon TPanel de mon Component et il reste là jusqu'à ce que je compile mon programme. Est-ce que vous pouvez m'aider, j'aimerais que le TEdit s'enregistre dans mon fichier DMF.

BeCeCLE
Merci

4 réponses

bececle Messages postés 3 Date d'inscription samedi 1 octobre 2005 Statut Membre Dernière intervention 16 août 2006
15 août 2006 à 21:47
J'ai relu ma question, elle n'est pas évidente à comprendre. Je vous donne une partie de code pour aider à comprendre.

type TMonComponent = class(TWinControl)
protected
FPanel = TPanel;
public
constructor Create(Aowner: TControl); override;
end;

constructor TmonComponent.Create(AOwner: TControl);
begin
inherited create(AOwner);
FPanel := Tpanel.Create(Self);
FPanel.Parent := Self;
FPanel.Top := 50;
...
end;

Je ne veux pas qu'on puisse ajouter d'autres components au design time sur mon TMonComponent, mais je veux pouvoir mettre d'autre components sur mon FPanel.
Tout fonctionne bien, je peux ajouter sans problème, mais il ne s'enrigistre pas dans mon fichier DMF.
Hâbituellement avec un TPanel normal le fichier DMF resemble à :

object TPanel1: TPanel
Left = 570
...
object Edit1: TEdit
Left = 50
...
end
end
Je souhaite optenir le même résultat avec mon TMonComponent.
Selon moi je dois override la méthode qui écrit dans le fichier et la méthode qui lit lors de l'initialisation.
Merci de m'aider.
0
Guillemouze Messages postés 991 Date d'inscription samedi 25 octobre 2003 Statut Membre Dernière intervention 29 août 2013 6
16 août 2006 à 09:31
pourquoi tu herite pas ton composant de T[Custom]Panel?
a mon avis, il y a des methodes appelees quand tu ajoute un control sur un autre, il faut peut etre les surcharger
0
bececle Messages postés 3 Date d'inscription samedi 1 octobre 2005 Statut Membre Dernière intervention 16 août 2006
16 août 2006 à 12:24
Je veux permettre d'ajouter un autre component seulement à certain endroit, en plus je veux pouvoir modifier mon FPanel dans le TMonComponent.
Merci quand même Guillemouze.
0
Guillemouze Messages postés 991 Date d'inscription samedi 25 octobre 2003 Statut Membre Dernière intervention 29 août 2013 6
16 août 2006 à 13:53
peut etre devrait tu regarder du cote des ces fonctions:

TComponent.InsertComponent
TWinControl.Insertcontrol
0
Rejoignez-nous