Creer une fenêtre MDI parente à partir d'une page pour y mettre une fenetre MDI

RatioNeg Messages postés 5 Date d'inscription mardi 13 décembre 2005 Statut Membre Dernière intervention 20 janvier 2006 - 13 déc. 2005 à 15:43
cs_neko Messages postés 135 Date d'inscription jeudi 14 août 2003 Statut Membre Dernière intervention 12 octobre 2006 - 16 déc. 2005 à 09:57
Bonjour, j'ai un petit probleme :

J'ai une page de démarrage qui est une form simple et de cette form je
vais vais une form MDI.Jusque là pas de problème, mais quand je veux
appeler une fentre fille j'ai le message d'erreur suivant :

"Impossible de créer la fiche, aucune fiche non MDI active".

J'ai fais pas mal de recherche mais ça ne passe pas.



J'ai essayé en faisant comme ça :



Application.createform(TFrmMain,FrmMain);

FrmMain.formStyle:=fsMdiForm;

FrmMain.show;

et

Application.createform(TFrmFille,FrmFille);


FrmFille.formStyle:=fsMdiChild;

FrmFille.show;



Sinon comme ça :



FrmMain.Create(self).FormStyle:=fsMDIForm;

FrmMain.Show;

et

FrmFille.Create(self).FormStyle:=fsMDIChild;

FrmFille.show;



Et à chaque fois la seconde fenetre refuse de se lancer.Alors que si je
choisis FrmMain comme form principale du projet (donc ça ne passe plus
pas la page de démarrage) FrmFille se lance sans probleme.



Donc si vous avez une idée du problème..

1 réponse

cs_neko Messages postés 135 Date d'inscription jeudi 14 août 2003 Statut Membre Dernière intervention 12 octobre 2006 1
16 déc. 2005 à 09:57
En fait tu creer plusieurs fois ta fiche, je suppose que tu as dans ton projet quelque chose du style:
begin
Application.Initialize;
Application.createform(TFrmMain,FrmMain);
Application.createform(TFrmFille,FrmFille);
Application.Run;
end.
et que plus loin dans le code tu met ton:
Application.createform(TFrmMain,FrmMain);
FrmMain.formStyle:=fsMdiForm;
FrmMain.show;
Application.createform(TFrmFille,FrmFille);
FrmFille.formStyle:=fsMdiChild;
FrmFille.show;

Or ça te fait creer 2 fois chaque fenêtre, met simplement
FrmMain.formStyle:=fsMdiForm;
FrmMain.show;
FrmFille.formStyle:=fsMdiChild;
FrmFille.show;

Ça devrait marcher

bouh
0
Rejoignez-nous