窗体中实现按 回车键 跳到下一个可选的TabIndex控件

    技术2024-04-18  13

    Form中一“textbox”,两“button”,如何实现在textbox中按下回车响应button.click事件 :1) 把按钮的tabindex依次设置.如btnSure 1 ,btnModify 2, textbox 5等// 把下面的代码放到窗体中可以实现按回车键跳到下一个可选的TabIndex控件:  protected override bool ProcessDialogKey(Keys keyData)  {   if (keyData == Keys.Enter && !(this.ActiveControl is Button))   {    keyData = Keys.Tab;   }   return base.ProcessDialogKey(keyData);  } // 如果想对Button也执行这个规则,可以把!(this.ActiveControl is Button)去掉.2)private void txtName_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)  {//   if (e.KeyCode == Keys.Enter)//   {//    if(this.Name=="修改")//    this.btnModify.PerformClick();//    else        //添加//     this.btnSure.PerformClick();//   }  }3)把Form的属性:把AcceptButton设置为你要响应的Button.if(operFlag==0)    {     this.btnModify.Visible=false;     this.btnSure.Visible=true;    // this.AcceptButton=btnSure;    }    else if(operFlag==1)    {     this.btnModify.Visible=true;     this.btnSure.Visible=false;    // this.AcceptButton=this.btnModify;    }另:或者有多个TextBox,按下回车时光标自动跳往下个Tab顺序的TexeBox// 把每个textbox的AcceptTab属性设置为false。注意设置这组textbox的tabIndex设置为相临的数字。

    在一个textBox里先 textBox1.text="abc";紧接着让textBox1里执行一个“回车”键操作,不是手工按回车键,是让程序实现private void txtBox_textChange(System.Object sender, System.EventArgs e){    if(txtBox.text=="abc")    {         SendKeys.Send("{ENTER}");     }}

    最新回复(0)