Hello Aurora,
the idea of MDI is that all windows share the same menu (which is useful
for example for a text editor that supports editing several files at the
same time). So the menu is only created once - on the MDI parent and all
MDI children use the same menu. If your MDI children are more or less
identical, you could identify them with the method described below. If
this is not possible, you might either make them no MDI children (so
they can have their own menu) or maybe use a toolstrip (and mimic a menu
with ToolStripSplitButtons).
To identify which form is active, you could do something like this:
In your MDI form (or as a global variable in a module):
Public frmActiveForm As Form = Nothing
In your MDIchildren:
(Let's say in the Activated event).
Dim frmMDIparent As MDIParent1 = CType(Me.MdiParent, MDIParent1)
frmMDIparent.frmActiveForm = Me
This way you can clearly identify which form is active. So you can use
that info in your MDI form's menu subs.
Hope this helps.
Beste wishes,
Martin