积极答复者
两个Form。其中一个Form。通过按键两次载入后。不再有焦点。您遇到了吗。请求支援。谢谢。

问题
答案
-
您好。您的代码已经测试。程序首次启动。textbox可以获得焦点。如果第二次载入。窗口以及控件没有任何焦点。需要单击鼠标激活。
不会啊,我也测试过了,要不你把代码发到我邮箱我看看,谢谢!
请严格按照我给出的代码进行测试!特别检查你的KeyPreview是不是为True!
在
textBox1.Focus()
之后加上Application.DoEvents()——让系统尽快反映过来,执行完毕当前的指令(你暂且可以这样理解)
另外,请在构造函数之中加入Thread.Sleep(1000);起到延时作用
QQ我:
下载MSDN桌面工具(Vista,Win7)
我的博客园
慈善点击,点击此处
- 已编辑 ThankfulHeartModerator 2012年3月11日 10:12
- 已标记为答案 可推 2012年3月11日 10:52
全部回复
-
[Form1]
Imports System.Collections Imports System.Collections.Generic Imports System.Data Imports System.Diagnostics Public Partial Class Form1 Inherits Form Public Sub New() InitializeComponent() KeyPreview = True Addhandler KeyDown,AddressOf Form1_KeyDown) End Sub Private Sub Form1_KeyDown(sender As Object, e As KeyEventArgs) If e.KeyCode = Keys.F10 Then Dim frm2 As New Form2() frm2.ShowDialog() End If End Sub End Class
[Form2]
Public Partial Class Form2 Inherits Form Public Sub New() InitializeComponent() End Sub Private Sub Form2_Load(sender As Object, e As EventArgs) textBox1.Focus() '加上这句话,强制赋予焦点…… End Sub End Class
- 已编辑 ThankfulHeartModerator 2012年3月11日 2:55
-
您好。您的代码已经测试。程序首次启动。textbox可以获得焦点。如果第二次载入。窗口以及控件没有任何焦点。需要单击鼠标激活。
不会啊,我也测试过了,要不你把代码发到我邮箱我看看,谢谢!
请严格按照我给出的代码进行测试!特别检查你的KeyPreview是不是为True!
在
textBox1.Focus()
之后加上Application.DoEvents()——让系统尽快反映过来,执行完毕当前的指令(你暂且可以这样理解)
另外,请在构造函数之中加入Thread.Sleep(1000);起到延时作用
QQ我:
下载MSDN桌面工具(Vista,Win7)
我的博客园
慈善点击,点击此处
- 已编辑 ThankfulHeartModerator 2012年3月11日 10:12
- 已标记为答案 可推 2012年3月11日 10:52