Ctrl + 快捷键如何在 OnKeyPress 事件中翻译?
How are Ctrl + Key shortcuts translated in the OnKeyPress event?
我试图从 TEdit
的 OnKeyPress
事件中检测 Ctrl+V 并且我我注意到当按下 Ctrl+AnyKey.
时,Key
参数采用一个不寻常的值
示例:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
ShowMessage(IntToStr(Ord(Key)));
end;
它产生以下结果:
- Ctrl+Q17
- Ctrl+W23
- Ctrl+E5
- Ctrl+R18
- ...
- Ctrl+A1
- Ctrl+Z26
- Ctrl+C 3
- Ctrl+V22
- Ctrl+X24
我不明白按键是如何翻译的,这些代码是什么意思?
好像和ASCII table没有关系:
有人能解释一下吗?
我试图从 TEdit
的 OnKeyPress
事件中检测 Ctrl+V 并且我我注意到当按下 Ctrl+AnyKey.
Key
参数采用一个不寻常的值
示例:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
ShowMessage(IntToStr(Ord(Key)));
end;
它产生以下结果:
- Ctrl+Q17
- Ctrl+W23
- Ctrl+E5
- Ctrl+R18
- ...
- Ctrl+A1
- Ctrl+Z26
- Ctrl+C 3
- Ctrl+V22
- Ctrl+X24
我不明白按键是如何翻译的,这些代码是什么意思?
好像和ASCII table没有关系:
有人能解释一下吗?