Delphi 拦截Tab按键消息


本文整理自网络,侵删。

 
如果要拦截TAB键行为,应该捕获 CM_DIALOGKEY 消息。在这里示例中,如果将 YouWantToInterceptTab 布尔值设置为 true,则将会吃掉 TAB 键:


unit Unit1;
interface
uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;
type
    TForm1 = class(TForm)
        private
        YouWantToInterceptTab: Boolean;
        procedure CMDialogKey(var AMessage: TCMDialogKey); message CM_DIALOGKEY;
        public
        { Public declarations }
    end;
var
 Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.CMDialogKey(var AMessage: TCMDialogKey);
begin
 if AMessage.CharCode = VK_TAB then
 begin
    ShowMessage('TAB key has been pressed in ' + ActiveControl.Name);
    if YouWantToInterceptTab then
    begin
        ShowMessage('TAB key will be eaten');
        AMessage.Result := 1;
    end
    else
        inherited; 
        end
        else
        inherited;
    end;
end.

相关阅读 >>

wmi远程访问问题解决方法

Delphi createprocesswithlogonw用法

Delphi 双击dbgrid然后得到字段里面的内容

Delphi编程之桌面图标设置

Delphi richedit控件中插入图片bmp(bmp,文件),gif(文件)

Delphi 扫雷外挂

Delphi webservices传文件

Delphi 替换其他程序里面的函数为自己的函数

Delphi float转换int

Delphi中嵌入汇编检测是否在虚拟机里运行

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...