フロントパネルオブジェクトを制御する



LabVIEW 2018ヘルプ


発行年月: 2018年3月
製品番号: 371361R-0112
製品情報を参照

ダウンロード (Windowsのみ)


LabVIEW 2016ヘルプ
LabVIEW 2017ヘルプ
LabVIEW 2018ヘルプ
LabVIEW 2019ヘルプ
LabVIEW 2020ヘルプ

RefnumおよびクラシックRefnumパレットにある制御器Refnumを使用して、フロントパネルオブジェクトのリファレンスを他のVIに渡します。また、フロントパネルオブジェクトを右クリックして、ショートカットメニューから作成→リファレンスを選択して、VIサーバリファレンスを作成することもできます。さらに、ブロックダイアグラム上のVIサーバリファレンス定数からフロントパネルオブジェクトを特定することもできます。ブロックダイアグラムでリファレンスを右クリックして、ショートカットメニューから検索→制御器を選択します。サブVIにVIサーバリファレンスを渡すと、プロパティノードおよびインボークノードを使用して、プロパティの読み書きや、参照されるフロントパネルオブジェクトのメソッドのインボークを実行できます。

メモ  VIは、制御器リファレンスによって自動的にメモリに維持されるわけではなく、またVIがメモリに維持されるかどうかが制御器リファレンスによって決定されるわけではありません。VIがメモリから消去されると、制御器リファレンスは無効になります。制御器リファレンス使用中にVIをメモリに維持するには、「VIリファレンスを開く」関数を使用してVIを維持し、「リファレンスを閉じる」関数を使用して適切にVIを閉じます。また、フロントパネルを開いたままにするとVIがメモリに維持されます。

また、イベントを使用して、フロントパネルオブジェクトを介してプログラム的にブロックダイアグラムの動作を制御することができます。

制御器リファレンスを使用してデータを渡すこともできますが、パフォーマンスを向上させるために、制御器に対して読み取りまたは書き込みを行うか、代わりにローカルまたはグローバル変数を使用してください。

制御器リファレンスは、テキストベースのプログラミング言語でのユーザインタフェースのオブジェクトリファレンスに相当します。制御器リファレンスは、テキストベースのプログラミング言語のポインタには相当しません。

制御器リファレンスの使用例については、labview\examples\Application Control\VI Server\Control ReferencesのControl References VIを参照してください。

タイプ指定制御器Refnumと準タイプ指定制御器Refnum

タイプ指定制御器Refnumは、完全に同じ種類のデータタイプの制御器Refnumのみを受け入れます。たとえば、タイプ指定制御器Refnumのタイプが32ビット整数のスライドである場合は、制御器Refnum端子に32ビット整数のスライドのみしか配線できません。8ビット整数のスライド、倍精度スカラのスライド、または32ビット整数スライドのクラスタは、制御器Refnum端子に配線できません。

制御器から作成する制御器リファレンスはデフォルトで、タイプ指定制御器Refnumとなります。フロントパネル上の制御器リファレンスの左下隅の赤い星は、その制御器リファレンスが、タイプ指定制御器リファレンスであることを示します。ブロックダイアグラムでは、制御器リファレンス端子に配線されたプロパティノードやインボークノードに(指定)が表示され、制御器リファレンスがタイプ指定されていることを示します。

メモ  ラッチ式機械的動作はタイプ指定制御器リファレンスと互換性がないので、ラッチ式機械的動作を行うブール制御器では準タイプ指定制御器リファレンスが生成されます。

準タイプ指定制御器Refnumは、より広範囲のタイプのデータを受け入れます。たとえば、準タイプ指定指定制御器リファレンスがスライドである場合、制御器リファレンス端子には32ビット整数スライド、単精度スライド、または32ビット整数スライドのクラスタを配線できます。準タイプ指定制御器リファレンスのタイプが制御器である場合、すべての制御器タイプの制御器リファレンスを制御器リファレンス端子に配線できます。

メモ  準タイプ指定制御器リファレンス端子にプロパティノードを配線する場合、プロパティによってバリアントデータが生成されます。バリアントデータは使用前に変換する必要がある場合があります。チャートの履歴データプロパティは、チャートのリファレンスがタイプ指定の場合にのみ使用できます。


この記事は役に立ちましたか。

役に立たなかった