【问题标题】:how to respond to a key press when focused on a radiogroup in delphi专注于delphi中的radiogroup时如何响应按键
【发布时间】:2021-04-02 11:08:26
【问题描述】:

在德尔福中: 当当前焦点位于没有 onkeypress 事件的无线电组上时,您如何响应按键。我希望使用表单 onkeypress 事件,但它不会触发。

【问题讨论】:

  • 假设您的表单是 VCL 表单,只需将表单的 KeyPreview 属性设置为 True

标签: delphi radio-group onkeypress


【解决方案1】:

您可以通过将表单的KeyPreview 属性设置为True 来实现这一点。

但是,我不确定您是否真的做对了,因为这是一个相当罕见的问题。

您没有写出要响应的键盘快捷键。但请记住

  • 字母用于导航 GUI。例如,按下A 可能会选择&All 单选按钮或单击&Add 按钮。同样,Alt+A 在当前控件允许字符输入、允许您打开&Add-ons 菜单项等情况下也会这样做。

  • 如果您想添加像Ctrl+O 这样的正确快捷方式,最好将TActionList 与具有此快捷方式的操作一起使用。此动作可以映射到菜单项、按钮等,或者只是存在于后台而不附加到任何可视控件。在非常简单的应用程序中,您可能希望使用带有此类快捷方式的独立菜单项。

【讨论】:

  • 我只想响应按 ENTER 键以继续下一项
  • @TonyWolff:好的。我假设在同一个对话框中。 (只是为了这个页面的其他访问者可能想要做其他事情的利益:让 Enter 激活“关闭”、“下一步 >”或“确定”按钮,使该按钮 Default = True。)
  • 除了保存和取消按钮外,表单上没有任何按钮。此外,下一个需要关注的组件取决于对当前项目的响应。
猜你喜欢
  • 1970-01-01
  • 2021-07-30
  • 2020-11-11
  • 1970-01-01
  • 2011-08-31
  • 1970-01-01
  • 2017-05-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多