Leadtools.Multimedia Namespace > CaptureCtrl Class : HasDialog Method |
'Declaration Public Overridable Function HasDialog( _ ByVal dialog As CaptureDlg _ ) As Boolean
'Usage Dim instance As CaptureCtrl Dim dialog As CaptureDlg Dim value As Boolean value = instance.HasDialog(dialog)
public virtual bool HasDialog( CaptureDlg dialog )
public: virtual bool HasDialog( CaptureDlg dialog )
Imports Leadtools Imports Leadtools.Multimedia Imports LeadtoolsMultimediaExamples.Fixtures Public _result As Boolean = False Public _form As CaptureCtrlForm = New CaptureCtrlForm() Public Sub HasDialogExample() ' reference the capture control Dim capturectrl As CaptureCtrl = _form.CaptureCtrl ' output file for capture Dim outFile As String = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_HasDialogExample.avi") Try ' try to find a USB camera If capturectrl.VideoDevices("USB") Is Nothing Then Throw New Exception("No USB video device available") End If capturectrl.VideoDevices("USB").Selected = True ' try to find a USB audio device If capturectrl.AudioDevices("USB") Is Nothing Then Throw New Exception("No USB audio device available") End If capturectrl.AudioDevices("USB").Selected = True ' The HasDialog method tells us that the control ' can display the desired settings dialog. ' check to see if the Capture properties dialog is available If capturectrl.HasDialog(CaptureDlg.Capture) Then ' now show it to change some settings capturectrl.ShowDialog(CaptureDlg.Capture, _form) _result = True End If ' set MPEG2 as the video compressor capturectrl.VideoCompressors.Mpeg2.Selected = True ' set AC3 as the audio compressor capturectrl.AudioCompressors.AC3.Selected = True ' set the target output file and format capturectrl.TargetFile = outFile ' set the target output format capturectrl.TargetFormat = TargetFormatType.AVI ' check if we have can capture video and audio If capturectrl.IsModeAvailable(CaptureMode.VideoAndAudio) Then capturectrl.FrameRate = 5 ' 5 frames per second capturectrl.UseFrameRate = True capturectrl.TimeLimit = 10 ' just 10 seconds of capture time capturectrl.UseTimeLimit = True ' start the capture process capturectrl.StartCapture(CaptureMode.VideoAndAudio) ' 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. Do While capturectrl.State = CaptureState.Running Application.DoEvents() Loop End If Catch e1 As Exception _result = False End Try End Sub Public NotInheritable Class LEAD_VARS Public Const MediaDir As String = "C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 18\Media" End Class
using Leadtools; using Leadtools.Multimedia; using LeadtoolsMultimediaExamples.Fixtures; public bool _result = false; public CaptureCtrlForm _form = new CaptureCtrlForm(); public void HasDialogExample() { // reference the capture control CaptureCtrl capturectrl = _form.CaptureCtrl; // output file for capture string outFile = Path.Combine(LEAD_VARS.MediaDir,"CaptureCtrl_HasDialogExample.avi"); try { // try to find a USB camera if (capturectrl.VideoDevices["USB"] == null) throw new Exception("No USB video device available"); capturectrl.VideoDevices["USB"].Selected = true; // try to find a USB audio device if (capturectrl.AudioDevices["USB"] == null) throw new Exception("No USB audio device available"); capturectrl.AudioDevices["USB"].Selected = true; // The HasDialog method tells us that the control // can display the desired settings dialog. // check to see if the Capture properties dialog is available if (capturectrl.HasDialog(CaptureDlg.Capture)) { // now show it to change some settings capturectrl.ShowDialog(CaptureDlg.Capture, _form); _result = true; } // set MPEG2 as the video compressor capturectrl.VideoCompressors.Mpeg2.Selected = true; // set AC3 as the audio compressor capturectrl.AudioCompressors.AC3.Selected = true; // set the target output file and format capturectrl.TargetFile = outFile; // set the target output format capturectrl.TargetFormat = TargetFormatType.AVI; // check whether we can capture video and audio if (capturectrl.IsModeAvailable(CaptureMode.VideoAndAudio)) { capturectrl.FrameRate = 5; // 5 frames per second capturectrl.UseFrameRate = true; capturectrl.TimeLimit = 10; // just 10 seconds of capture time capturectrl.UseTimeLimit = true; // start the capture process capturectrl.StartCapture(CaptureMode.VideoAndAudio); // 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 (capturectrl.State == CaptureState.Running) Application.DoEvents(); } } catch (Exception) { _result = false; } } static class LEAD_VARS { public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 18\Media"; }