本文整理汇总了C#中Eto.Forms.Control.OnKeyDown方法的典型用法代码示例。如果您正苦于以下问题:C# Control.OnKeyDown方法的具体用法?C# Control.OnKeyDown怎么用?C# Control.OnKeyDown使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Eto.Forms.Control
的用法示例。
在下文中一共展示了Control.OnKeyDown方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: KeyDown
public static bool KeyDown(Control control, NSEvent theEvent)
{
if (control != null)
{
var kpea = theEvent.ToEtoKeyPressEventArgs();
control.OnKeyDown(kpea);
if (!kpea.Handled)
{
var handler = control.Handler as IMacViewHandler;
if (handler != null)
handler.PostKeyDown(kpea);
}
return kpea.Handled;
}
return false;
}
示例2: OnKeyDown
/// <summary>
/// Raises the key down event.
/// </summary>
public void OnKeyDown(Control widget, KeyEventArgs e)
{
widget.Platform.Invoke(() => widget.OnKeyDown(e));
}
示例3: KeyDown
public static bool KeyDown (Control control, NSEvent theEvent)
{
if (control != null) {
char keyChar = !string.IsNullOrEmpty (theEvent.Characters) ? theEvent.Characters [0] : '\0';
Key key = KeyMap.MapKey (theEvent.KeyCode);
KeyPressEventArgs kpea;
Key modifiers = KeyMap.GetModifiers (theEvent);
key |= modifiers;
//Console.WriteLine("\t\tkeymap.Add({2}, Key.{0}({1})); {3}", theEvent.Characters, (int)keyChar, theEvent.KeyCode, theEvent.ModifierFlags);
//Console.WriteLine("\t\t{0} {1} {2}", key & Key.ModifierMask, key & Key.KeyMask, (NSKey)keyChar);
if (key != Key.None) {
if (((modifiers & ~(Key.Shift | Key.Alt)) == 0))
kpea = new KeyPressEventArgs (key, keyChar);
else
kpea = new KeyPressEventArgs (key);
} else {
kpea = new KeyPressEventArgs (key, keyChar);
}
control.OnKeyDown (kpea);
return kpea.Handled;
}
return false;
}