0

我正在开发 vb.net 应用程序。在我的一个工具条菜单项的主表单中,我将四个表单一起调用。

我想在工具条菜单项下为此提供一个快捷键。

Dim frm As New frmKeyAssignBoard  
frm.Location = New Point(625, 0)   
frm.MdiParent = Me  frm.Show()
Dim frm1 As New FrmrecievedDelivaryRequest  
frm1.Location = New Point(625, 225)  
frm1.MdiParent = Me
frm1.Show()

Dim frm2 As New FrmDelivary    
frm2.Location = New Point(965, 0) 
frm2.MdiParent = Me 
frm.show()  

等等。

每个例子:

  • 如果我按 K,我希望我的光标转到特定的文本框frmKeyAssignBoard
  • 如果我按 R 我想将光标移到特定的文本框FrmrecievedDelivaryRequest
  • 如果我按 D 我想将光标移到特定的文本框FrmDelivary

我怎样才能做到这一点?我在 frmMaster_KeyDown 事件中遇到了这样的事情:但是再次显示相同的页面我已经打开了 FrmDelivary 的实例,所以我不想再次显示相同的页面。我只想将光标位置获取到此表单的特定文本框 If e.KeyCode = Keys.A Then Dim form As New FrmDelivary form.Show() form.txtTicket.Focus() Cursor.Position = form.txtTicket.Location end if

4

1 回答 1

0

根据您的具体示例,我认为这是一个可能的解决方案。将主窗体中的 KeyPreview 属性设置为 true,以便将所有键事件发送到窗体 KeyPressed 事件处理程序。然后,检查是否在该事件处理程序中按下了键。完成后,您可以使用 Cursor.Position 转到您谈论的位置。

于 2013-08-12T14:53:27.267 回答