Delphi 中没有像Word里后悔键“Ctrl+Z"

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Delphi 中没有像Word里后悔键“Ctrl+Z"相关的知识,希望对你有一定的参考价值。

比如说我在排列控件,发现排错了,想返回上一步,怎么办,没有
像Word里后悔键“Ctrl+Z",谢谢

不管是窗体设计器,还是代码编辑器,都可以用Ctrl+Z来撤消操作的 参考技术A 会不会是因为打开中文输入法所以用ctrl+Z无效?有些软件必须在英文状态才能用所有的快捷键

delphi中组合键代码

谁有delphi中组合键代码。我想查下ctrl+tab。

参考技术A Ctrl 一般要单独来判断,没有虾米组合代码...
例如要TForm来判断Ctrl+Tab,需要响应OnKeyDown事件:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (ssCtrl in Shift) and (Key = VK_TAB) then
ShowMessage('OK');
end;
如果焦点不在Form上,那上面的代码就不好使了。
如果想截获所有键盘信息,得用Delphi蛋疼的ApplicationEvents,因为Delphi把重要的消息循环给藏起来了...
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
var Handled: Boolean);
begin
if (Msg.message = WM_KEYDOWN) and (Msg.wParam = VK_TAB) and (GetKeyState(VK_CONTROL) < 0) then
ShowMessage('OK');
end;
参考技术B if (GetKeyState(VK_CONTROL) and 128 = 128) and (GetKeyState(VK_TAB) and 128 = 128)
then edit1.text := 'true'
else edit1.text := 'false';

以上是关于Delphi 中没有像Word里后悔键“Ctrl+Z"的主要内容,如果未能解决你的问题,请参考以下文章