我正在使用 SdlDotNet 6.1,我喜欢它 :)
我的 SurfaceControl WinForm 控件(pictureBox),我没有收到按键向上和向下事件所有其他事件(MouseDown、MouseMotion、Tick)似乎只有在调用 Events.Run()(锁定线程......)后才起作用
WinForm 事件“PreviewKeyDown”也没有引发。
我发现 SurfaceControl 需要焦点来引发这些事件。我在 MouseMove 事件上使用 mySurfaceControl.Select() 来强制关注它。
我的问题是keyboardDown事件不是在每个键上引发的......它在AZ Escape NumLock Enter Space F1-12 Pause Home Delete上引发。它不会在 Ctrl Shift Tab 返回 1-9 1-9(num) 个箭头符号上引发。Alt 和 Alt-Gr 被提升为 Keys.Menu。
我的 Azerty 键盘(对不起,我是法国人)不是原因,我在 Qwerty 模式下进行了测试。
在 WinForm 事件“PreviewKeyDown”上检测到所有键,但 WinForm 不提供 PreviewKeyup 事件...
所以 Keyboard.IsKeyPressed 总是返回 false 并且 KeyboardState 返回 323 false 但 Events.IsEventEnabled() 是 true。
我需要检测何时按下 AZ:好的 我需要检测是否按下了 Ctrl/Shift/Alt:不可以
有任何想法吗 ?谢谢你。