用c#编,一个botton按钮,单击选中,按Enter进入界面,这一块的代码怎么写啊~~谢谢啦~~

如题所述

不知道为什么LZ要实现这个功能,直接点击button就进入界面不就行了么,为啥要先选中,再按Enter进?既然LZ问了,我就写个测试看一下。
我发现KeyDown不能响应Enter键,因为我想其实如果button1聚焦后,点击Enter,其实响应了button1_Click事件,所以我改为空格键响应了,需要说明的是,我利用的是Form1的KeyDown事件,还有在响应的时候需要将KeyPreview 设为true,不然按键不响应。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace ButtonEnterDemo
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
this.button1.Click += new System.EventHandler(this.button1_Click);
this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.Form1_KeyDown);
this.KeyPreview = true;
}

private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Space && this.button1.Focused)
{
MessageBox.Show("空格进入界面!","提示");
}
}

private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show("点击进入界面!","提示");
}
}
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-04-18
用窗体中的keydown事件,在该事件中,判断是否按了enter和botton是否得到焦点,如果得到了,则进入页面追问

怎么不可以啊,你看我编的对吗?
btnXJT.KeyDown+=new KeyEventHandler(btnXJT_KeyDown);
void btnXJT_KeyDown(object o, KeyEventArgs e)
{
if ((e.KeyCode == Keys.Enter)&&(btnXJT.Focus()))
{
这就不写了
}
} 上面对吗?怎么改啊,谢谢你

追答

btnXJT.Focus()))这个不对应该是btnXJT.Focused

追问

还是不对,点下那个btnXJT,都不是选中状态,一直按着才是选中,根本没法按Enter,还有别的办法吗?谢谢你啊·~

用c#编,一个botton按钮,单击选中,按Enter进入界面,这一块的代码怎么写...
private void button1_Click(object sender, EventArgs e){ MessageBox.Show("点击进入界面!","提示");} } }

在c#窗体的groupbox控件上有3个radiobotton ,怎样设置其中一个为程序...
在加载的时候,设置你要默认选中的radiobutton按钮的属性Checked="True"就行了。

使用c# 来写一个很简单的相册浏览器,
拖一个pictureBox 控件和imageList 控件,还有2个botton控件 属性名字别改。只改下imagelist里面的imagesize把图片改大点。在imagelist 的images属性里面随便添加几张图片,最好不要中文路径。下面是代码:int i = 0;private void Form1_Load(object sender, EventArgs e){ this.pictureBox1.Image = thi...

...怎样在点击一下就取消选中,麻烦大侠们解决一下,非常感谢
radiobotton也可以,不过我感觉还是checkbox靠谱一点。设置一个变量bool last = this.radioButton1.Checked;然后在click事件里: private void radioButton1_Click(object sender, EventArgs e) { this.radioButton1.Checked = last = !last; } 追问 只是我用的radioButton太多了,有256个,如果用radioButtonlist又不能...

C# 要想给一个死循环设置循环时间间隔,每5秒循环一次。
.Net 2.0版本代码如下:(3.5或以上可以考虑使用Task)private Thread thread;private void button1_Click(object sender, EventArgs e){if (thread != null){thread = new Thread(new ThreadStart(Loop));thread.Start();}else{MessageBox.Show("轮检已启动。");}}private void Loop(){while ...

C#如何在FORM1中按一个按钮将FORM2中的窗体显示在FORM1中的PANLE2中...
先实例化一个公共窗体,Form frm =new Form();[Form是C#里面默认的,不用你自己创建这个窗体]然后再Button里写 frm.Dispose();frm=new FORM2 ();frm.TopLevel = false;frm.Parent=this.splitContainer1.Panel2;frm.Show();

相似回答