Tag: keydown

C#asp.net中WebForm中Winform的Textbox.KeyDown的备用事件是什么?

在winfrom应用程序中,我可以拥有 textbox1.keydown 事件,但我想在webform(asp.net)中实现相同的function,那么我该怎么做呢? 我需要在这个事件中从数据库中检索数据……

C#秒表即时更新

(我的第一个问题在这里!)嗨,我是c#的初学者。 我试图构建一个简单的计时器(在Windows.Forms中)。 我做了一个标签来指示时间,并使用了StopWatch类(来自system.diagnostics)。 启动/停止秒表的触发事件是空格键KeyDown事件。 第二次点击后,秒表停止,Label.text被分配给Stopwatch.Elapsed值。 我想不断更新标签,但我不知道如何。 如果我在事件本身中使用while(StopWatchName.IsRunning) ,则事件将无限期地继续,并且不会响应第二次点击。 提前感谢任何想法!

多个同时按键c#

我正在使用microsoft visual studio c#编写游戏,我必须同时捕获很多键。 我无法同时检测Q,W,E,R,T,Y但我可以检测到Q,W,E,R,T,A。 我试图使用KeyDown和[DllImport(“user32.dll”)]但两者都有相同的结果。 Y和A键有什么区别,我该如何解决这个问题? int code1 = GetVirtualKeyCode(Keys.Q); int code2 = GetVirtualKeyCode(Keys.W); int code3 = GetVirtualKeyCode(Keys.E); int code4 = GetVirtualKeyCode(Keys.R); int code5 = GetVirtualKeyCode(Keys.T); int code6 = GetVirtualKeyCode(Keys.Y); if ((array[code1] & 0x80) != 0 && (array[code2] & 0x80) != 0 && (array[code3] & 0x80) != 0 && (array[code4] & 0x80) != 0 […]

WPF密钥是数字或数字

我在我的窗口中有previewKeyDown方法,我想知道按下的键只有AZ字母或1-0数字(没有anyF1..12,输入,ctrl,alt等 – 只是字母或数字)。 我已经尝试过Char.IsLetter ,但是我需要给char,所以e.key.ToString()[0]不起作用,因为它几乎每次都是一个字母。

C# – 俄罗斯方块克隆 – 无法阻止对箭头键组合做出正确响应

我正在使用Visual C#2005编写一个俄罗斯方块游戏。这是我设计的最广泛的程序。 我创建了一个形状类和一个块类来控制不同俄罗斯方块的位置,移动和显示。 我有每个形状的moveDown(),moveLeft()和moveRight()函数(和相应的canMoveDown(),canMoveLeft(),canMoveRight()布尔函数,validation它可以移动)。 这一切都很美妙。 我想使用向下,向右和向左箭头键让用户移动块,除了使用计时器使形状每隔很多毫秒自动下降一行。 我正在使用KeyDown事件处理程序来检查用户何时按下向下,向左和向右箭头键。 这不是那么难。 问题是我想允许对角线运动,我希望它能够顺利运行。 我已经尝试了一系列不同的方法来解决这个问题,并取得了不同程度的成功。 但我不能说得对…… 我最成功的方法是使用三个布尔变量来跟踪向下,向左和向右箭头键被按下的时间。 我会在KeyDown事件中将布尔值设置为true,并在KeyUp事件中将布尔值设置为false。 在KeyDown事件中,我还将告诉块如何移动,使用布尔变量来检查当前正在按下哪个组合。 除了一件事,它的效果非常好。 如果我按下其中一个箭头键并按住,然后按下第二个箭头键然后释放第二个键,该块将完全停止移动,而不是继续沿第一个箭头键的方向移动,而第一个箭头键尚未释放然而。 我认为这是因为第二个键触发了KeyDown事件,并且在释放时,KeyUp事件被触发,并且KeyDown事件完全停止触发,即使第一个键被触发。 我不能为我的生活找到一个满意的解决方案来解决这个问题。 任何帮助将不胜感激=)

KeyDown事件 – 如何轻松知道按下的键是否为数字?

我目前正在处理DataGridView控件的KeyDown事件。 其中一列由计算值填充,我希望用户能够在需要时覆盖单元格值。 当用户按下数字键时,单元格进入EditMode并允许用户覆盖该值。 如果密钥不是数字,则没有任何反应…… 这工作得很好……问题是我发现它的代码很难看…我似乎找不到一个简洁的方法来处理单个条件下的所有数字键,所以我做了一个开关case构造来处理所有可能的数字键,如下所示: switch (e.KeyCode) { case Keys.D0: case Keys.D1: case Keys.D2: case Keys.D3: case Keys.D4: case Keys.D5: case Keys.D6: case Keys.D7: case Keys.D8: case Keys.D9: case Keys.Decimal: case Keys.NumPad0: case Keys.NumPad1: case Keys.NumPad2: case Keys.NumPad3: case Keys.NumPad4: case Keys.NumPad5: case Keys.NumPad6: case Keys.NumPad7: case Keys.NumPad8: case Keys.NumPad9: [code to make the cell […]

获取Control.KeyDown上的char?

处理Control.OnKeyPress事件时,有一个包含KeyChar的KeyPressEventArgs 。 出于可用性原因,我需要完全相同的KeyChar但在处理OnKeyDown事件时。 KeyEventArgs不包含任何与char相关的数据。 我的意思是,如果在有或没有Shift的情况下按A键,它不会影响KeyCode , KeyData或KeyValue 。 使用另一种语言时,我仍然可以获得资本英语价值。 如何在KeyDown事件中获取KeyPressEventArgs.KeyChar ? 谢谢。

c#中的keydown由于某种原因不起作用

我正在尝试做一个计算器,而我所要做的就是让它与键盘配合使用。 这应该有效,但事实并非如此。 private void Form1_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.D1) { resultarea.Text = “fgdgd”; //number(1); } …. } 什么可能出错? 编辑:它仍然无法正常工作。 我想我也可以发布整个代码。 public partial class Form1 : Form { public Form1() { InitializeComponent(); KeyPreview = true; } double first = 0; double second = 0; string op = “”; bool last = true; […]

在KeyDown事件后删除延迟?

当我在游戏中按住键来移动我的玩家时: public void MainForm_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Up) { Player.MoveUp(); } } 当我按下向下箭头时,玩家立即移动一步,然后暂停一小段时间,然后再开始平稳移动。 这是为什么? 我该怎样预防呢?

如何捕获Print Screen键?

我按下Print Screen键时我需要捕获的程序,但它不起作用(但它可以与其他键一起使用)。 我想这与windows劫持我的权威有关,因为我还是新手,我很想知道如何解决这个问题。 这是我目前的代码: namespace Boom_Screenshot_ { /// /// Interaction logic for Window1.xaml /// public partial class Window1 : Window { //SETTINGS Key TRIGGER_KEY = Key.PrintScreen; public Window1() { InitializeComponent(); } private void Window_KeyDown(object sender, KeyEventArgs e) { if (e.Key == TRIGGER_KEY) { MessageBox.Show(“‘PrintScreen’ was pressed.”); } } } }