ShowDialog Method (original) (raw)

Summary

Shows a specified property dialog.

Syntax

Parameters

dialog
Value that specifies which dialog to show. Must be one of the CaptureDlg enumeration values.

hWnd
Value that specifies the dialog owner's window handle.

Example

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:\LEADTOOLS23\Media"; }