cs_speedy_gonzales
Messages postés11Date d'inscriptionmercredi 2 mai 2007StatutMembreDernière intervention26 juillet 2007
-
25 juil. 2007 à 12:46
Guillemouze
Messages postés991Date d'inscriptionsamedi 25 octobre 2003StatutMembreDernière intervention29 août 2013
-
26 juil. 2007 à 13:22
Bonjour tous le monde
Voilà j'ai créer un Composant dans lequel je créer d'autres composant. Les composants se créer correctement lors de l'appel au Create du composant principal mais ce que je voudrais c'est qu'il n'apparaissent pas dans la form de mon application à chaque fois que j'ouvre mon projet. En effet à chaque fois que j'ouvre mon projet, tous les composants se rajoute dans ma form se qui devient vite imbuvable. Si je laisse les composants dans ma form, au lancement de l'application il y a des erreurs me disant qu'il ne trouve pas la classe des composants que je créer avec mon composant principal. Ce qui fait que je suis obliger de les enlever de ma fiche à chaque fois.
Comment faire pour que ces composants n'apparaissent plus dans ma form car ils ne sont en fait utilisé que par mon composant principal et l'application n'intervient jamais dessus.
Donc je place mon composant TCometServer dans ma form et a chaque fois que
j'ouvre mon projet, les composants: MonFTP, MonSMPT, Image, BarInfo et TimerGrafTravail apparaissent dans ma form.
Est-ce que cela vient du Owner que je passe en parametre lors de la creation ? j'ai essayé en mettant "Self" cela donne la meme chose.
ensuite attention a la destruction, le inherited Destroy se place a la fin et non au debut de la methode et dans l'ordre inverse de creation, ne pas oublier non plus d'appeler les methode de desactivation des objets avant la liberation pour eviter tout appel interne pouvant provoquer une erreur :
si ensuite, les composants apparaissent dans la fiche et non dans le composant, c'est que ce composant n'est pas un composant visuel pouvant contenir (visuellement) d'autre composant.
cs_speedy_gonzales
Messages postés11Date d'inscriptionmercredi 2 mai 2007StatutMembreDernière intervention26 juillet 2007 26 juil. 2007 à 10:16
J'ai effectué les modifications et j'aurai une autre question
quand j'ecrit par exemple (ça le fait avec tous les XXX.parent:=self)
MonFTP.Parent := Self;
J'ai une erreur de compilation me disant que l'identificateur Parent n'est pas déclaré.
Cela veut t'il dire que je n'ai pas à mettre ces lignes car je n'ai pas la propriété Parent n'existe pas pour ces composants ou c'est autre chose.
J'ai regarder l'exemple de l'aide de Delphi avec les RadioButton, la propriété Parent n'est pas dans les propriétés du composant quand je regarde ces propriétés et pourtant il fond un RadioButton.Parent:=RadioGroup;
Ca me dit la même chose pour l'identificateur Active dans le Destroy
Guillemouze
Messages postés991Date d'inscriptionsamedi 25 octobre 2003StatutMembreDernière intervention29 août 20136 26 juil. 2007 à 13:22
Parent est une propriete de TControl (ou TWinControl). Donc, si ton composant (TNMFTP par exemple) n'herite pas de TControl, il n'y a pas besoin de lui affecter de parent. La seul utilité du parent que je connaisse est pour les composant qui ont une partie graphique (pour definir l'origine de leur coordonnées, ...)