你可以这样试试看,首先设置你的主窗体的TopMost属性为True
然后添加这两个事件,并且设置焦点控件为textBox1,这样能简单解决你的问题,但不知道适合你的情况,紧提供参考,http://www.guanmingle.com private void textBox1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
if(e.KeyCode==Keys.Enter)
{
textBox1_TextChanged(new object(), new EventArgs());
}
}
private void textBox1_TextChanged(object sender, System.EventArgs e)
{
// MessageBox.Show("show");
Form2 fr=new Form2();
fr.Show();
this.textBox1.Focus();
}
然后添加这两个事件,并且设置焦点控件为textBox1,这样能简单解决你的问题,但不知道适合你的情况,紧提供参考,http://www.guanmingle.com private void textBox1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
if(e.KeyCode==Keys.Enter)
{
textBox1_TextChanged(new object(), new EventArgs());
}
}
private void textBox1_TextChanged(object sender, System.EventArgs e)
{
// MessageBox.Show("show");
Form2 fr=new Form2();
fr.Show();
this.textBox1.Focus();
}
每打开一个窗体则count++
关闭则count--
然后以此来决定回车后该执行哪个事件跟tabIndex没什么关系。。
1。首先打开子窗口form1,form1中有textBox1, Button1
2。然后让button1获得焦点
3。切换到form1以外的任何其他子窗口--就是让form1失去焦点。
4。切换回form1,此时焦点仍会在Button1(此时回车Button1_Click会响应)
5。回车执行Button1_Click
6。点击textBox1,在textBox1输入数据,textBox1的keypress事件会有响应
但是回车却不行,回车执行的仍然是Button1_Click
也就是说当回车时根本不会进textBox1_KeyDown,textBox1_KeyPress事件
自然所有的判断也是无效的
是不是在窗体上将这个Button1设置成了AcceptButton