protected virtual async Task OnkeyDownAsync(KeyboardEventArgs args) { if (OnkeyDown.HasDelegate) { await OnkeyDown.InvokeAsync(args); } }
/// <summary> /// 前回の状態と現在の状態を比較してイベント処理 /// </summary> private void ProcessEvent() { // 各キーのイベントを処理 foreach (HoloPlayButton button in Enum.GetValues(typeof(HoloPlayButton))) { if (!lastState[button] && currentState[button]) { // Key down OnkeyDown?.Invoke(button); } else if (lastState[button] && !currentState[button]) { // Key up OnkeyUp?.Invoke(button); } lastState[button] = currentState[button]; } }