尝试将 KeyPress 与参数一起使用,但不知道如何正确传递参数
Trying to use KeyPress with arguments but don't know how to pass args correcly
我希望程序在我按 Escape 时退出,就像现在这样,只要按任何按钮就关闭。
这是我的代码
game.KeyPress += (sender, e) => { game.Exit(); };
我在我的项目中使用 https://github.com/ppy/osuTK 这个作为参考。
KeyPress 和 KeyPressEventArgs 都继承自 osuTK.Input
下面还有这段代码
Key.Escape
密钥也继承自 osuTK.Input。
game.KeyPress<KeyPressEventArgs<Key.Escape>> += (sender, e) => { game.Exit(); };
上面的这段代码不起作用,但接近它的代码就完美了。
KeyPressEventArgs 有 KeyChar 属性。用它来测试按下了什么键:
if (e.KeyChar == (char)Keys.Return)
{
e.Handled = true;
}
你可以根据KeyPressEventArgs.KeyChar用这段代码试试:
game.KeyPress += (sender, eventArgs) => {
if (eventArgs.KeyChar == (char)Keys.Escape) {
// TODO
}
};
我希望程序在我按 Escape 时退出,就像现在这样,只要按任何按钮就关闭。
这是我的代码
game.KeyPress += (sender, e) => { game.Exit(); };
我在我的项目中使用 https://github.com/ppy/osuTK 这个作为参考。 KeyPress 和 KeyPressEventArgs 都继承自 osuTK.Input
下面还有这段代码
Key.Escape
密钥也继承自 osuTK.Input。
game.KeyPress<KeyPressEventArgs<Key.Escape>> += (sender, e) => { game.Exit(); };
上面的这段代码不起作用,但接近它的代码就完美了。
KeyPressEventArgs 有 KeyChar 属性。用它来测试按下了什么键:
if (e.KeyChar == (char)Keys.Return)
{
e.Handled = true;
}
你可以根据KeyPressEventArgs.KeyChar用这段代码试试:
game.KeyPress += (sender, eventArgs) => {
if (eventArgs.KeyChar == (char)Keys.Escape) {
// TODO
}
};