/// <returns> /// 対応する値がなければ System.Windows.Forms.Keys.None を返す。 /// </returns> public static WindowsKey KeyToKeys(SlimDXKey key) { if (_KeyToKeys.ContainsKey(key)) { return(_KeyToKeys[key]); } else { return(WindowsKey.None); } }
public static bool IsPressed(SlimDX.DirectInput.Key key, bool isOnce = true) { if (IsUseKeyboard == false) { SetupKeyboard(); } if (isOnce) { var stateList = GetKeyboardBufferData(); if (stateList != null) { for (int i = 0; i < stateList.Count; i++) { var state = stateList[i]; foreach (var __key in state.PressedKeys) { if (key == __key) { return(true); } } if (state.IsPressed(key)) { return(true); } } } } else { // 押しっぱなしを検出 var keyboard = GetKeyboard(); if (keyboard != null && keyboard.GetCurrentState().IsPressed(key)) { return(true); } } return(false); }
private string get_HotkeyText(Key key, List <Key> modifiers) { string text = ""; foreach (var modifier in modifiers) { if (modifier == Key.LeftControl) { text += "CTRL+"; } if (modifier == Key.LeftAlt) { text += "ALT+"; } if (modifier == Key.LeftShift) { text += "SHIFT+"; } } text += key.ToString(); return(text); }
private string get_HotkeyText(Key key, List<Key> modifiers) { string text = ""; foreach (var modifier in modifiers) { if (modifier == Key.LeftControl) text += "CTRL+"; if (modifier == Key.LeftAlt) text += "ALT+"; if (modifier == Key.LeftShift) text += "SHIFT+"; } text += key.ToString(); return text; }