←Select platform

KeyDownEventHandler Delegate

Summary

Represents the method that will handle an event that has received KeyDownEventArgs data.

Syntax

C#
VB
C++
public delegate void KeyDownEventHandler( 
   object sender, 
   KeyDownEventArgs e 
) 
Public Delegate Sub KeyDownEventHandler( _ 
   ByVal sender As Object, _ 
   ByVal e As Leadtools.Mediafoundation.KeyDownEventArgs _ 
)  
public delegate void KeyDownEventHandler(  
   Object^ sender, 
   Leadtools.Mediafoundation.KeyDownEventArgs^ e 
) 

Parameters

sender
The source of the event.

e
A KeyDownEventArgs object that contains the event data.

Remarks

Represents the method that will handle an event that has received KeyDownEventArgs data. When the KeyDownEvent event is raised in a toolkit object, any subscribed event handlers in your code will be called. See the Microsoft documentation on .NET Events and Delegates for more information about .NET delegates and events.

Example

C#
VB
using Leadtools; 
using Leadtools.MediaFoundation; 
using LeadtoolsMediaFoundationExamples.Fixtures; 
 
public bool _result = false; 
public bool _exit = false; 
public CaptureCtrlForm _form = new CaptureCtrlForm(); 
 
public void KeyPressesExample() 
{ 
   CaptureCtrl capturectrl = _form.CaptureCtrl; 
   string outFile = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_KeyPressesExample.avi"); 
 
   try 
   { 
      // set a video device, use the name of your device here 
      if (capturectrl.VideoDevices["Analog"] == null) 
         throw new Exception("No Analog capture device available"); 
 
      capturectrl.VideoDevices["Analog"].Selected = true; 
 
      // set an audio device, use the name of your device here 
      capturectrl.AudioDevices["USB"].Selected = true; 
 
      // enable preview 
      capturectrl.Preview = true; 
 
      // set the target output file 
      capturectrl.TargetFile = outFile; 
 
      // subscribe to the key events 
      capturectrl.KeyDown += KeyDown_Helper; 
      capturectrl.KeyUp += KeyUp_Helper; 
      capturectrl.KeyPress += KeyPress_Helper; 
 
      // capture it now! 
      capturectrl.StartCapture(CaptureMode.AutoFramesAndAudio); 
   } 
   catch (Exception) 
   { 
      _result = false; 
   } 
 
   // we'll loop on the state and pump messages for this example. 
   // but you should not need to if running from a Windows Forms application. 
   while (_exit == false) 
      Application.DoEvents(); 
 
   // clean up event handlers 
   capturectrl.KeyDown -= KeyDown_Helper; 
   capturectrl.KeyUp -= KeyUp_Helper; 
   capturectrl.KeyPress -= KeyPress_Helper; 
} 
 
void KeyPress_Helper(object sender, Leadtools.MediaFoundation.KeyPressEventArgs e) 
{ 
   switch ((char)e.keyAscii) 
   { 
      case 'p': 
         // toggle preview mode 
         _form.CaptureCtrl.TogglePreview(); 
         break; 
      case 'f': 
         // toggle full screen mode 
         _form.CaptureCtrl.ToggleFullScreenMode(); 
         break; 
      case 's': 
         // stop the capture and exit 
         _form.CaptureCtrl.StopCapture(); 
         _exit = true; 
         break; 
   } 
 
   // set result 
   _result = true; 
} 
 
void KeyUp_Helper(object sender, KeyUpEventArgs e) 
{ 
   // set result 
   _result = true; 
} 
 
public void KeyDown_Helper(object sender, KeyDownEventArgs e) 
{ 
   // set result 
   _result = true; 
} 
 
static class LEAD_VARS 
{ 
   public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 19\Media"; 
} 
Imports Leadtools 
Imports Leadtools.MediaFoundation 
Imports LeadtoolsMediaFoundationExamples.Fixtures 
 
Public _result As Boolean = False 
Public _exit As Boolean = False 
Public _form As New CaptureCtrlForm() 
 
Public Sub KeyPressesExample() 
   Dim capturectrl As CaptureCtrl = _form.CaptureCtrl 
   Dim outFile As String = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_KeyPressesExample.avi") 
 
   Try 
      ' set a video device, use the name of your device here 
      If capturectrl.VideoDevices("Analog") Is Nothing Then 
         Throw New Exception("No Analog capture device available") 
      End If 
 
      capturectrl.VideoDevices("Analog").Selected = True 
 
      ' set an audio device, use the name of your device here 
      capturectrl.AudioDevices("USB").Selected = True 
 
      ' enable preview 
      capturectrl.Preview = True 
 
      ' set the target output file 
      capturectrl.TargetFile = outFile 
 
      ' subscribe to the key events 
      AddHandler capturectrl.KeyDown, AddressOf KeyDown_Helper 
      AddHandler capturectrl.KeyUp, AddressOf KeyUp_Helper 
      AddHandler capturectrl.KeyPress, AddressOf KeyPress_Helper 
 
      ' capture it now! 
      capturectrl.StartCapture(CaptureMode.AutoFramesAndAudio) 
   Catch generatedExceptionName As Exception 
      _result = False 
   End Try 
 
   ' we'll loop on the state and pump messages for this example. 
   ' but you should not need to if running from a Windows Forms application. 
   While _exit = False 
      Application.DoEvents() 
   End While 
 
   ' clean up event handlers 
   RemoveHandler capturectrl.KeyDown, AddressOf KeyDown_Helper 
   RemoveHandler capturectrl.KeyUp, AddressOf KeyUp_Helper 
   RemoveHandler capturectrl.KeyPress, AddressOf KeyPress_Helper 
End Sub 
 
Private Sub KeyPress_Helper(ByVal sender As Object, ByVal e As Leadtools.MediaFoundation.KeyPressEventArgs) 
   Select Case e.keyAscii 
      Case CShort("p") 
         ' toggle preview mode 
         _form.CaptureCtrl.TogglePreview() 
      Case CShort("f") 
         ' toggle full screen mode 
         _form.CaptureCtrl.ToggleFullScreenMode() 
      Case CShort("s") 
         ' stop the capture and exit 
         _form.CaptureCtrl.StopCapture() 
         _exit = True 
   End Select 
 
   ' set result 
   _result = True 
End Sub 
 
Private Sub KeyUp_Helper(ByVal sender As Object, ByVal e As KeyUpEventArgs) 
   ' set result 
   _result = True 
End Sub 
 
Public Sub KeyDown_Helper(ByVal sender As Object, ByVal e As KeyDownEventArgs) 
   ' set result 
   _result = True 
End Sub 
 
Public NotInheritable Class LEAD_VARS 
   Public Const MediaDir As String = "C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 19\Media" 
End Class 

Requirements

Target Platforms

Help Version 19.0.2017.10.19
Products | Support | Contact Us | Copyright Notices
© 1991-2017 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.MediaFoundation Assembly