使用Delphi for Windows,我通常使用以下代码:
function isCtrlDown : Boolean;
var
ksCurrent : TKeyboardState;
begin
GetKeyboardState(ksCurrent);
Result := ((ksCurrent[VK_CONTROL] and 128) <> 0);
end;
如何在 Mac OSX 上使用 FireMonkey 实现这一点?
我找到了这个,但我不知道如何使用 FireMonkey/Delphi(它使用...)来管理它:
void PlatformKeyboardEvent::getCurrentModifierState(bool& shiftKey, bool& ctrlKey, bool& altKey, bool& metaKey)
{
UInt32 currentModifiers = GetCurrentKeyModifiers();
shiftKey = currentModifiers & ::shiftKey;
ctrlKey = currentModifiers & ::controlKey;
altKey = currentModifiers & ::optionKey;
metaKey = currentModifiers & ::cmdKey;
}
我还在调查……目前,我已经找到了这个单元,里面有关键事件的东西……
unit Macapi.AppKit;