プレースホルダを使用して、アプリケーションで特定の状況が発生した場合に監視したいイベントを登録します。プレースホルダは特定のイベント用に「イベント登録」関数にエントリを作成しますが、LabVIEWがそのプレースホルダオブジェクトのイベントを生成することは許可しません。「イベント登録」関数のrefnum出力を別の「イベント登録」関数のrefnum入力に配線すると、refnumを受け入れる関数に既存の登録情報が含まれます。そのため、プレースフォルダオブジェクトを有効なオブジェクトリファレンスと置換することにより、「イベント登録」関数の登録情報を変更することができます。

使用するオブジェクト

以下のブロックダイアグラムオブジェクトを使用してイベント登録を動的に変更します。

解決方法

イベントをダイナミック登録し、アプリケーションの異なる場所に、登録したいイベントのプレースホルダを作成するために、次のようなブロックダイアグラムを作成します。この例では、ユーザがフロントパネル上のピクチャ制御器をクリックしたときにのみ、VIペーンでマウス移動イベントがトリガされるように登録を動的に変更します。

以下のリストには、上の手順についての重要な情報が記載されています。

ピクチャ制御器リファレンスのマウスダウンおよびマウスアップイベントをダイナミック登録します。
イベントのプレースフォルダを作成するには、refnum定数を「イベント登録」関数に配線します。refnum定数の値が非refnumであるため、LabVIEWは無効なオブジェクトのマウス移動イベントを登録します。このため、マウス移動イベントはデータフローでLabVIEWが有効なイベントを登録するまで発生しません。上のブロックダイアグラムでは、現在のVIペーンのタイプ指定refnum定数がマウス移動イベントに配線されています。このrefnum定数を作成するには、VIサーバリファレンスをクリックしてショートカットメニューからペーンを選択します。ペーンリファレンスを右クリックして、ショートカットメニューから作成»定数を選択します。

特定の状況でのみ発生させたいイベントのプレースホルダを登録した後で、LabVIEWがイベントを登録するタイミングを指定するイベントケースを設計します