2014-12-06 70 views
1

我的項目有MDI的形式和它的有許多快捷 所有快捷方式,做工精細的菜單,而它的焦點,但是當我打開任何形式的所有快捷方式停止,因爲MDI工作形成不活躍 我怎麼能發送鍵盤按MDI窗體觸發菜單快捷方式MDI菜單快捷鍵不能正常工作,而其他形式的有效

這個我怎麼打開的子窗口

FrmChild.Owner = Me 
FrmChild.Show() 

我做按鍵,按鍵事件的靜態,公共和,但他們在按鍵,鍵入在孩子形式它的工作,我發送鍵盤輸入噸o MDI表單,但菜單快捷鍵從不觸發。

frmMDI

Public Shared Sub frmMDI_KeyDown(sender As Object, e As KeyEventArgs) Handles Me.KeyDown 

End Sub 

frmChild

Private Sub FrmChild_KeyDown(sender As Object, e As KeyEventArgs) Handles Me.KeyDown 
    frmMDI.frmMDI_KeyDown(sender, e) 
End Sub 

感謝。

+0

通常活動窗口接收鍵盤快捷鍵,讓您的應用程序運行正常。最好的問候, – 2014-12-06 05:11:53

回答

0

你不需要在孩子的keydown處理到的MdiParent的keydown的處理程序調用。父母的菜單快捷方式將不會工作。它不工作的原因是因爲你應該有

FrmChild.MdiParent = Me 

代替

FrmChild.Owner = Me 
+0

是的,你是對的,但我的目的這樣做。因爲childForms要大,並顯示他們在MDI的前面是好的形式我:) – 2014-12-06 09:48:09

+0

將攜手與KEYDOWN處理程序,如果你使用普通的形式,而不是的MDI家長。 – xpda 2014-12-06 16:23:53

+0

我嘗試過,但它不起作用可以給我更多的信息,但方法是瞭解快捷方式如何觸發 – 2014-12-06 18:43:31