在做俄罗斯方块
事件有4个 Load KeyDown KeyUp Paint 单独拿一个窗体做触发事件是可用的//里面的窗体事件不知道为什么触发不了
private void frmMain_KeyDown(object sender, KeyEventArgs e)
{
switch (e.KeyCode)
{
case Keys.Up:
State = Direction.up;
break;
case Keys.Down:
State = Direction.down;
break;
case Keys.Left:
State = Direction.left;
break;
case Keys.Right:
State = Direction.right;
break;
}
}
事件有4个 Load KeyDown KeyUp Paint 单独拿一个窗体做触发事件是可用的//里面的窗体事件不知道为什么触发不了
private void frmMain_KeyDown(object sender, KeyEventArgs e)
{
switch (e.KeyCode)
{
case Keys.Up:
State = Direction.up;
break;
case Keys.Down:
State = Direction.down;
break;
case Keys.Left:
State = Direction.left;
break;
case Keys.Right:
State = Direction.right;
break;
}
}
解决方案 »
- SqlDependency 监听途中,如果客户端断开网络后重新连接到网络,怎么重新监听?
- C# 调用Cmd命令的问题。
- datagridview 下 更新数据库的问题
- TeeChart如何绘制光滑的曲线?
- 有没方法自动获取进程的启动与退出?
- ListBox的问题?
- 爱情与推理机
- 如何获取DataGid一列的宽度,自己做了,有点问题,老提示Index超过索引,帮忙看 看,有源码,谢谢!!在线等!!
- 我想把PPS文件放在服务器上,通过浏览器(装插件或客户端都可以)观看。做得象视频流一样,边下载边观看。可以吗?
- 为什么我更新了 IE 到 11 版本了,在 C# 里面还是引用不到 mshtml.IHTMLIFrameElement3
- 合并excel多个工作表至一个dataset时遇到的奇怪问题
- C# combox与数据库同步更新??
' Select Case CInt(e.wParam) '
' Case 256 '按下响应
' TextBox1.Text += keyBoardInfo.vkCode.ToString()
' Exit Select
' Case 257
' Exit Select
' Case Else
' Exit Select
' End Select
' End Sub
' Public Sub Hk_KeyUp(ByVal sender As Object, ByVal e As KeyEventArgs)
' Select Case e.KeyData
' Case Keys.F10
' Me.Hide()
' Case Keys.F9
' Me.Visible = True
' Me.Top = 200
' Case Keys.F8
' Hk_Xp.StopHook()
' Me.Close()
' End Select
' BeginInvoke(New EventHandler(AddressOf TSCL_Ce), e.KeyValue)
'可以直接处理,只是异步安全调用 --便于返回-执行别的事件
' End Sub
'-------勾子按键的处理-STA
Sub TSCL_Ce(ByVal KeyV As System.Object, ByVal e As System.EventArgs)
Dim KeyValue As Integer = Val(KeyV.ToString) '按键的键值
If KeyValue = Keys.T Then '要保留1-9 A-F , 用于调试器输入十六进制数据及空格
'T 隐藏窗体,再按显示窗体。
If Me.Visible = True Then
Me.Visible = False
Else '--------任务栏及程序窗口的显示--STA
If Win_Xp_bz = False Then '是WINCE系统
Ce_showtaskbar()
Else
Xp_showtaskbar()
End If
这是一个message route的问题,呵呵
原来的keydown事件被按钮屏蔽了
加个重载就好了。protected override bool ProcessDialogKey(Keys keyData)
{
switch(keyDate)
{
case keys.up:
break;
} return false;
}