ICImagingControl.ImageAvailable Event

内部リングバッファへの画像フレームのコピーが完了した時点で発生するイベントです。

構文

[VB.NET]
Public Event ImageAvailable( ByVal sender As Object, ByVal e As ICImagingControl.ImageAvailableEventArgs )
[C#]
public event System.EventHandler<ICImagingControl.ImageAvailableEventArgs> ImageAvailable; 
パラメータ 説明
sender イベントの発生したオブジェクトを指します。ICImagingControlのインスタンスということになります。
e イベントを呼び出すバッファのインデックスを含むImageAvailableEventArgsクラスライブラリリファレンス>クラス>ImageAvailableEventArgs オブジェクトを指します。

制限

ImageAvailableイベントが発生する前に、ICImagingControl.LiveCaptureContinuousクラスライブラリリファレンス>クラス>ICImagingControl>ICImagingControl.LiveCaptureContinuous Property はTrueに設定している必要があります。コントロールはライブモードで動作しているおり、イベントシンクは登録されていなければなりません。(これはVisualBasicにより行われます)

備考

イベント内ではSendMessageのようなエディットボックスにテキストを加える処理をもたらすWindows API 関数は使用しないでください。アプリケーションをブロックさせる恐れがあります。
イベントプロシージャが動作している間は新しいイベントが送られることはありませんが、フレームはコピーされます。
ImageAvailableイベントで発生する例外はシステム内で見失ってしまいます。 よってその例外を引き起こすコードのバグを認識することはできません。これを避けるためにイベントハンドラ内の全コードでtry ... catchブロックを使用することが必要です。エラーメッセージを表示させたい場合はメッセージボックスを使わずに"debug trace" (e.g. System.Diagnostics.Trace.WriteLine(...) )を使用してください。でなければシステムがデッドロックに陥り、アプリケーションが停止することになってしまいます。

サンプル

ImageAvailableイベント用のイベントプロシージャの実装をします。イベントプロシージャではImageBufferオブジェクトが宣言され、イベント発生時に画像を取り込みます。
ImageAvailable イベントによってバッファを表示させるプログラマーズガイド>ImageAvailableイベントによってバッファを表示させる を参照してください。