MDI

Résolu
Signaler
Messages postés
76
Date d'inscription
mercredi 21 mars 2007
Statut
Membre
Dernière intervention
13 novembre 2008
-
Messages postés
76
Date d'inscription
mercredi 21 mars 2007
Statut
Membre
Dernière intervention
13 novembre 2008
-
Bonjour a tous!

Quelqu'un sais comment controler un composant d'une certaine fenetre MDI a partir de la MainForm ?
Lorsque je cré une Child, j'aimerais pouvoir ajouter des lignes au RichEdit qui est dans celle-ci..

ChildForm.MDIChildren[0].Richedit ne marche pas.. j'ai access a toute les procedure normal d'une fenetre mais pas les composants!

Il y a surment une methode! :P

Merci!

3 réponses

Messages postés
93
Date d'inscription
mardi 11 avril 2006
Statut
Membre
Dernière intervention
4 mars 2009

Bonjour,

Cela est tout à fait normal car ChildForm.MDIChildren[0] représente un objet de type TForm. Il faut donc faire un cast avec le type de la fenêtre fille. Si celle-ci s'appelle TMDIChild, tu auras donc TMDIChild(ChildForm.MDIChildren[0]).RichEdit ...

A+

sylvunix
Messages postés
814
Date d'inscription
vendredi 3 novembre 2000
Statut
Membre
Dernière intervention
30 juillet 2009
3
salut,

pour prendre des bonnes habitudes, je te conseille de faire une méthode public de type AjouterLigne(s:String) qui ajoutera la ligne dans ton rich edit (évidamment. le transtypage est nécessaire de la même manière). Ceci te permet d'avoir une application plus souple et plus faciel a modifier par la suite.

bon code,

Loda
<hr size="2" width="100%" />Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.
Messages postés
76
Date d'inscription
mercredi 21 mars 2007
Statut
Membre
Dernière intervention
13 novembre 2008
1
Merci a vous deux :P


C'est belle et bien le cas, il faut specifier que c'est un TMDIChild.. par contre j'ai procedé de la maniere suivante..

with (Mainform.MDIChildren[0] as TChildForm).Richedit do
      begin
      lines.add('...')
      end;

Merci encore!