Leadtools.Multimedia Namespace > PlayCtrl Class : SaveStillDIB Method |
'Declaration Public Overridable Sub SaveStillDIB( _ ByVal fileName As String, _ ByVal timeOut As Integer _ )
Public _form As PlayCtrlForm = New PlayCtrlForm() Public _playctrl As PlayCtrl = Nothing Public _result As Boolean = False Private _inFile As String = Path.Combine(LEAD_VARS.MediaDir, "PlayCtrl_Source.avi") Private _outFile As String = Path.Combine(LEAD_VARS.MediaDir, "PlayCtrl_SaveStillDIB.dib") Public Sub SaveStillDIBExample() ' reference the play control _playctrl = _form.PlayCtrl Try ' set a timer on the form to make the still DIB _form.TestTimer.Interval = 5000 AddHandler _form.TestTimer.Tick, AddressOf SaveStillDIB_Helper ' set the source and target files _playctrl.SourceFile = _inFile ' now start the test timer for the still DIB capture _form.TestTimer.Start() Catch e1 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. Do While _playctrl.State = PlayState.Running Application.DoEvents() Loop End Sub Public Sub SaveStillDIB_Helper(ByVal sender As Object, ByVal e As EventArgs) ' cancel the timer _form.TestTimer.Stop() ' save the still DIB to a file _playctrl.SaveStillDIB(_outFile, -1) ' check for the capture file and set the result If File.Exists(Path.Combine(Directory.GetCurrentDirectory(), _outFile)) Then _result = True End If ' stop playback _playctrl.Stop() End Sub Public NotInheritable Class LEAD_VARS Public Const MediaDir As String = "C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 175\Media"; End Class
public PlayCtrlForm _form = new PlayCtrlForm(); public PlayCtrl _playctrl = null; public bool _result = false; string _inFile =Path.Combine(LEAD_VARS.MediaDir,"PlayCtrl_Source.avi"); string _outFile =Path.Combine(LEAD_VARS.MediaDir,"PlayCtrl_SaveStillDIB.dib"); public void SaveStillDIBExample() { // reference the play control _playctrl = _form.PlayCtrl; try { // set a timer on the form to make the still DIB _form.TestTimer.Interval = 5000; _form.TestTimer.Tick += new EventHandler(SaveStillDIB_Helper); // set the source and target files _playctrl.SourceFile = _inFile; // now start the test timer for the still DIB capture _form.TestTimer.Start(); } 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 (_playctrl.State == PlayState.Running) Application.DoEvents(); } public void SaveStillDIB_Helper(object sender, EventArgs e) { // cancel the timer _form.TestTimer.Stop(); // save the still DIB to a file _playctrl.SaveStillDIB(_outFile, -1); // check for the capture file and set the result if (File.Exists(Path.Combine(Directory.GetCurrentDirectory(), _outFile))) _result = true; // stop playback _playctrl.Stop(); } static class LEAD_VARS { public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 175\Media"; }
Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2