Mdiparent, mdichild, modal, showdialog, pas évident d'utiliser en meme temps....

XGuarden Messages postés 259 Date d'inscription dimanche 14 juillet 2002 Statut Membre Dernière intervention 17 août 2012 - 4 févr. 2006 à 07:07
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 - 5 janv. 2007 à 13:52
Bonjours, ma question est simple mais difficile à comprendre...



1-J'ai un programme en MDI

2-Dans la fenetre MDIPARENT je fait apparaitre une fenetre MDICHILD

3-Dans la fenêtre MDICHILD j'appelle un eautre fenetre en modal( showdialog)

4-Je constalle alors que cette fenêtre n'ait pas contenu dans MDIPARENT

5-Je modifie FRMSELECTION(la fenetre modal) comme suit:

frmselection.mdiparent= me.parentform



Malheureusement, vb m'indique que je ne peut pas utiliser showdialog avec une fenetre qui 'ait pas de premier niveau.





Comment puis-je faire pour rendre modal ma fenetre frmselection par
rapport à MDICHILD tout en fessant en sorte qu'elle soti encrée dans
MDIPARENT?



Merci d'avance.

6 réponses

cs_Stephane Messages postés 550 Date d'inscription vendredi 5 janvier 2001 Statut Membre Dernière intervention 23 septembre 2006
4 févr. 2006 à 10:08
salut



tu peux le faire a la méthode "bourrin" en utilisant les apis :



Declare Function SetParent Lib "user32" Alias "SetParent" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long

Declare Function GetParent Lib "user32" Alias "GetParent" (ByVal hwnd As Long) As Long





tu met une procedure



public sub init(parent as long)

setparent me.hwnd, parent

end sub



dans ta form modale et tu l'appelle comme ca :



load frmmodal

frmmodal.init getparent(frmchild.hwnd)

frmmodal.show 1





je pense que ca devrait marcher.

A+
0
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
4 févr. 2006 à 16:26
dans le frmChild tapes ce code pour créer une autre frmChild :

dim fclsChild as new frmChild
fclsChild.MdiParent = me.MdiParent
fclsChild.ShowDialog()

Normalement ca devrait marcher !

Redman
0
XGuarden Messages postés 259 Date d'inscription dimanche 14 juillet 2002 Statut Membre Dernière intervention 17 août 2012
5 févr. 2006 à 04:54
Cette méthode ne marchera pas, ta qu'a essayer pour voir.
0
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
5 févr. 2006 à 11:35
Ben j'ai un programme MDI où ca marche !

Redman
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_makdad Messages postés 10 Date d'inscription samedi 14 janvier 2006 Statut Membre Dernière intervention 27 octobre 2008
5 janv. 2007 à 13:42
salut
j'ai un problème dans mon application .c'est que j'ai un mdiparent et mdichild,et dans cette mdichild j'appelle un autre formulaire qui contient un datagrid je click sur ce datagrid les information devront s'afficher à  mdichil precedant mais ils affichaient dans une nouveau mdichild.
merci
0
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
5 janv. 2007 à 13:52
Montre le code où tu "invoque" l'affichage de cette DataGrid que je voyes plus clair.

Redman
0
Rejoignez-nous