仅当光标位于Timage组件上时,是否有可能检测退格键(如事件)?此快捷方式必须触发与TImage相关的专用图像处理。
答案 0 :(得分:4)
当鼠标进入或离开图像时,我只会启用/禁用按键检测事件(OnMouseEnter,OnMouseLeave)。
您只需要在表单上使用BackDetection函数(与TKeyEvent兼容):
procedure MyForm.BackDetection(Sender: TObject; var Key: word; Shift: TShiftState);
begin
if Key = VK_BACK then begin
...
... Your image-processing code
...
end;
end;
这确实要求KeyPreview
为True
。
然后您只需设置此事件,或在鼠标进入或离开图像时将其禁用。
procedure MyForm.MyImageOnMouseEnter(Sender: TObject);
begin
OnKeyPress := BackDetection;
end;
procedure MyForm.MyImageOnMouseLeave(Sender: TObject);
begin
OnKeyPress := nil;
end;