Gestion des fenêtres MDI [Résolu]

cs_Phil72000 13 Messages postés lundi 16 juillet 2007Date d'inscription 18 décembre 2007 Dernière intervention - 17 août 2007 à 15:44 - Dernière réponse : cs_Phil72000 13 Messages postés lundi 16 juillet 2007Date d'inscription 18 décembre 2007 Dernière intervention
- 19 août 2007 à 18:30
Mon appli. utilise une fenêtre mère et des fenêtre filles (MDI).
J'aimerais retrouver le nom de la fenêtre fille active, c'est à dire celle qui est au premier plan.
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
cs_Phil72000 13 Messages postés lundi 16 juillet 2007Date d'inscription 18 décembre 2007 Dernière intervention - 18 août 2007 à 10:40
3
Merci
VOILA

En fait la solution, comme bien souvent est toute simple :

For
Each ChildForm
As Form
In
Me.MdiChildren

            If ChildForm.Text =
Me.ActiveMdiChild.Text
Then                        MsgBox(ChildForm.Text)

            End
If

Next

Merci à tous pour votre aide

Merci cs_Phil72000 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 102 internautes ce mois-ci

Commenter la réponse de cs_Phil72000
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 17 août 2007 à 18:34
0
Merci
Salut
Me.ActiveForm.Name , tout simplement

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Commenter la réponse de cs_Jack
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 17 août 2007 à 18:35
0
Merci
Oups, j'avais pas vu que tu causais en .Net
Faudrait vérifier, mais je pense que le ActiveForm doit toujours exister
Commenter la réponse de cs_Jack
cs_Phil72000 13 Messages postés lundi 16 juillet 2007Date d'inscription 18 décembre 2007 Dernière intervention - 17 août 2007 à 18:56
0
Merci
Ben vi, c'est bien là mon pb, le ActiveForm ne marche pas. A noter que les forms mdi sont crées en live. Donc, même en VB5, le Me.ActiveForm.Name n'aurait pas marché.
Merci du coup de main.
Si quelqu'un a une autre idée ?
Commenter la réponse de cs_Phil72000
le5ejumeau 130 Messages postés mardi 11 mars 2003Date d'inscription 9 juillet 2009 Dernière intervention - 17 août 2007 à 23:55
0
Merci
Salut ,
Essayes ça cela devrais marcher :



For



Each
F

As
Form

In



Me
.MdiChildren




      If
F.Focused

Then



Return
F.Name




Next
Commenter la réponse de le5ejumeau
cs_Phil72000 13 Messages postés lundi 16 juillet 2007Date d'inscription 18 décembre 2007 Dernière intervention - 18 août 2007 à 10:26
0
Merci
Merci le5ejumeau, j'avais déjà essayé cette posssibilité, malheureusement aucune forme fille n'a le focus. En fait seule la forme mère a le focus aux yeux de Windows.
Il me semble que pour se sortir de ce pb il faudrait avoir la possibilité de connaître la position (z) de chaque form fille. Mais je ne sais pas comment on fait.
La seule chose que l'on connaisse est le numéro d'instance, donc l'ordre de création, ce qui n'est pas utile dans le cas présent.
Voilà un beau chalenge pour les membres de vbfrance, voir même d'un tutorial qui pourrait être utile à tous.
Commenter la réponse de cs_Phil72000
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 18 août 2007 à 19:27
0
Merci
Re
Bah si tu arrives à faire le 
   If
ChildForm.Text = Me.ActiveMdiChild.Text Then

c'est que  Me.ActiveMdiChild  est bien un objet !
Donc  MsgBox Me.ActiveMdiChild.Text  devrait suffire sans lister les MdiForms, non ?

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Commenter la réponse de cs_Jack
cs_Phil72000 13 Messages postés lundi 16 juillet 2007Date d'inscription 18 décembre 2007 Dernière intervention - 19 août 2007 à 18:30
0
Merci
Bien sûr.
Merci pour votre réactivité.
Phil
Commenter la réponse de cs_Phil72000

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.