C# 如何为某个按钮添另自定义的快捷键
比如我的窗体有个按钮的控件:button,现在我不单用户用鼠标单击这个按钮触发单击的事件,我还想用键盘的某个键如A键来启动这个事件,能实现吗比如我这个button单机事件...
比如我的窗体有个按钮的控件:button,现在我不单用户用鼠标单击这个按钮触发单击的事件,我还想用键盘的某个键如A键来启动这个事件,能实现吗
比如我这个button单机事件是
private void button2_Click(object sender, EventArgs e)
如何用键盘的某个键触发这个事件,请高人指点!
我发现,这个问题不是那么简单,就是说我用键盘某个键触发这个事件,是有前提的,就是文本框里必须有光标在闪烁,否则无法捕获光标的位置,造成我的事件出错! 展开
比如我这个button单机事件是
private void button2_Click(object sender, EventArgs e)
如何用键盘的某个键触发这个事件,请高人指点!
我发现,这个问题不是那么简单,就是说我用键盘某个键触发这个事件,是有前提的,就是文本框里必须有光标在闪烁,否则无法捕获光标的位置,造成我的事件出错! 展开
5个回答
展开全部
是winform吗,Text值写上XXX(&R) ;R为快捷键 按住ALT+R就能触发按钮事件
是web 就用楼上的方法
是web 就用楼上的方法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
private void button2_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.F1)//F2...F12
{
//需要调用的方法
}
}
//这个方法是可以实现的 ,有一个前提是 已经选择这个按钮了。所以还有设置默认选择
http://blog.csdn.net/gaofang2009/archive/2010/01/11/5172456.aspx 有很多方法,你看看需要那种吧
{
if (e.KeyCode == Keys.F1)//F2...F12
{
//需要调用的方法
}
}
//这个方法是可以实现的 ,有一个前提是 已经选择这个按钮了。所以还有设置默认选择
http://blog.csdn.net/gaofang2009/archive/2010/01/11/5172456.aspx 有很多方法,你看看需要那种吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
//Command.cs
namespace Test
{
public class Command
{
public static readonly RoutedUICommand TestCommand = new RoutedUICommand("Test", "Test", typeof(Test.Command), new InputGestureCollection { new KeyGesture(Key.A, ModifierKeys.Control) });
}
}
//xaml
<Window.CommandBindings>
<CommandBinding Command="local:Command.TestCommand" CanExecute="CommandBinding_CanExecute" Executed="CommandBinding_Executed"></CommandBinding>
</Window.CommandBindings>
<Button Name="button" Command="{x:Static local:Command.TestCommand}" Click="Button_Click" Content="_点击"></Button>
//xaml.cs
private void Button_Click(object sender, RoutedEventArgs e)
{
Execute();
button.Command = null;
e.Handled = true;
}
private void Execute()
{
MessageBox.Show("OK,Click");
}
private void CommandBinding_CanExecute(object sender, CanExecuteRoutedEventArgs e)
{
e.CanExecute = true;
}
private void CommandBinding_Executed(object sender, ExecutedRoutedEventArgs e)
{
Execute();
}
namespace Test
{
public class Command
{
public static readonly RoutedUICommand TestCommand = new RoutedUICommand("Test", "Test", typeof(Test.Command), new InputGestureCollection { new KeyGesture(Key.A, ModifierKeys.Control) });
}
}
//xaml
<Window.CommandBindings>
<CommandBinding Command="local:Command.TestCommand" CanExecute="CommandBinding_CanExecute" Executed="CommandBinding_Executed"></CommandBinding>
</Window.CommandBindings>
<Button Name="button" Command="{x:Static local:Command.TestCommand}" Click="Button_Click" Content="_点击"></Button>
//xaml.cs
private void Button_Click(object sender, RoutedEventArgs e)
{
Execute();
button.Command = null;
e.Handled = true;
}
private void Execute()
{
MessageBox.Show("OK,Click");
}
private void CommandBinding_CanExecute(object sender, CanExecuteRoutedEventArgs e)
{
e.CanExecute = true;
}
private void CommandBinding_Executed(object sender, ExecutedRoutedEventArgs e)
{
Execute();
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
document.onkeydown=function(){check()}
function check()
{
if(event.keyCode==65)
{
调用事件
}
}
function check()
{
if(event.keyCode==65)
{
调用事件
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
写到winform的按键方法中去,然后在接受的键值中进行判断是按下的哪个键,比如A==41,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询