相关疑难解决方法(0)

Delphi的KeyPreview如何运作?

一位同事和我本人正在就哪种方式减轻系统资源负担进行辩论.(注意:这不是我想要答案的问题.相反,标题和粗体下面的行是我寻求答案的问题.)

1. Using KeyPreview to get the keypresses on a form.
Run Code Online (Sandbox Code Playgroud)

要么

2. Using defining an OnMessage procedure and handling it there.
Run Code Online (Sandbox Code Playgroud)

乍一看似乎KeyPreview不会占用系统负担,因为定义OnMessage过程会导致我们的程序检查每条消息.我们不关心的注意消息会导致它被第一个if语句跳出.在最坏的情况下,我们会为每条消息执行if语句.

但我们想知道Delphi如何处理KeyPreview属性......我们想知道Delphi是否在内部定义了自己的OnMessage并查看消息然后触发与keypresses相关的事件.

如果是这种情况,那么两种方法都会大致相同吗?

delphi

9
推荐指数
2
解决办法
7232
查看次数

标签 统计

delphi ×1