メンバーVIを作成して、クラスまたはインタフェースで実行できる操作を定義します。メンバーVIは、プライベートまたは保護されたスコープ内の他のメソッドを呼び出す権限があります。クラスメンバーVIは、クラスのプライベートデータにアクセスする権限があります。メンバーVIは、複数の方法で作成することができます。

ブランクVIからメンバーVIを作成する

以下の手順に従って、ブランクVIからメンバーVIを作成します。

  1. ファイル»開くを選択して、開きたいクラスまたはインタフェースを検索して、新規LabVIEWクラスまたはインタフェースを作成するか、既存のクラスまたはインタフェースを開きます。
    メモ ファイル»開くを選択してクラスまたはインタフェースを開いた場合、プロジェクトエクスプローラウィンドウの代わりにクラスウィンドウが開きます。プロジェクトエクスプローラウィンドウの場合と同様にクラスウィンドウでクラスまたはインタフェースを作成します。
  2. (クラスのみ) クラスのプライベートデータを定義する
  3. プロジェクトエクスプローラウィンドウで、メンバーVIを作成したいクラスまたはインタフェースのプロジェクト項目を右クリックして、新規→VIをショートカットメニューから選択します。新規メンバーVIプロジェクトエクスプローラウィンドウに表示され、VIが開きます。
  4. ここで、クラスまたはインタフェースで実行できる操作を定義するメンバーVIを作成できます。

(クラスのみ) プロパティ定義フォルダでメンバーVIを作成する

プロパティ定義フォルダでメンバーVIを作成すると、LabVIEWクラスのプライベートデータがプロパティノードを使用してアクセスできるクラスのプロパティとなります。

メモ プロパティ定義フォルダに指定する名前は、プロパティノードに表示されるプロパティ名になります。プロパティ名を変更するには、対応するプロパティ定義フォルダの名前を変更する必要があります。プライベートデータの名前を変更しても、プロパティノードに表示されるプロパティ名は変更されません。

プロパティ定義フォルダでメンバーVIを作成するには、以下の手順に従ってください。

  1. ファイル»開くを選択して、開きたいクラスを検索して、新規LabVIEWクラスを作成するか、既存のクラスを開きます。
    メモ ファイル→開くを選択してクラスを開いた場合、プロジェクトエクスプローラウィンドウの代わりにクラスウィンドウが開きます。プロジェクトエクスプローラウィンドウの場合と同様にクラスウィンドウでクラスを作成します。
  2. クラスのプライベートデータを定義する
  3. プロジェクトエクスプローラウィンドウで、メンバーVIを作成したいクラスのアイコンを右クリックして、新規→プロパティ定義フォルダをショートカットメニューから選択します。新しいプロパティ定義フォルダが、プロジェクトエクスプローラウィンドウに表示されます。
  4. プロパティ定義フォルダを右クリックして、ショートカットメニューから新規»VIを選択します。新規VIは、ダイナミックディスパッチテンプレートまたはスタティックディスパッチテンプレートからも作成できます。新規メンバーVIプロジェクトエクスプローラウィンドウに表示され、VIが開きます。
    メモ プロパティ定義フォルダを右クリックしてショートカットメニューから追加→ファイルを選択して、既存のメンバーVIをプロパティ定義フォルダに追加することもできます。
  5. これにより、クラスのプライベートデータにアクセスして操作するメンバーVIを作成できるようになります。各プロパティ定義フォルダには、クラスのプライベートデータを読み取るVIを1つ、書き込むVIを1つ追加することができます。
    メモ プロパティノードを使用してLabVIEWクラスにアクセスする場合、クラスプロパティを右クリックしてショートカットメニューからアクセサを開くVIを選択することでLabVIEWクラスプロパティの実装を表示することができます。このオプションは、LabVIEWクラスまたはLabVIEWクラスを指すデータ値リファレンスをプロパティノードの リファレンス入力に配線し、アクセサVIのブロックダイアグラムが使用できる場合にのみ表示されます。プロパティが1つ以上の実装で動的な場合、このオプションを選択すると実装を選択ダイアログボックスが表示されます。このダイアログボックスを使用してプロパティまたはダイナミックディスパッチメンバーVIのすべての実装を表示し、ひとつ以上の実装を開きます

プロパティノードを使用してプライベートの読み書きを可能にするメンバーVIでは、4×2×2×4のコネクタペーンパターンを使用する必要があります。プライベートデータを読み取るメンバーVIの端子には、以下のコネクタペーン端子がなければなりません。

1 クラス入力 3 クラス出力 5 エラー出力
2 エラー入力 4 値出力

プライベートデータを書き込むメンバーVIの端子には、以下のコネクタペーン端子がなければなりません。

1 クラス入力 3 エラー入力 5 エラー出力
2 値入力 4 クラス出力
メモ メンバーVIのクラス入力クラス出力は同じLabVIEWクラスでなければなりません。プロパティ定義フォルダに読み取りメンバーVIと書き込みメンバーVIの両方が含まれる場合、読み取りVIの値出力と書き込みVIの値入力は同じデータタイプでなければなりません。

ダイナミックディスパッチテンプレートからメンバーVIを作成する

任意のVIテンプレートを使用して、新規ダイアログボックスで新規メンバーVIを作成できますが、LabVIEWは多くのダイナミックメソッドで必要とされる複数の機能を含むダイナミックディスパッチメンバーVIを作成するための素早く簡単な方法を提供します。LabVIEWは、エラー処理、入力クラスまたはインタフェース、出力クラスまたはインタフェース用にエラー入力エラー出力クラスタ、およびケースストラクチャを使用して、新規メンバーVIを満たします。入力と出力端子の両方がVIのコネクタペーンでダイナミックとして設定されます。以下の手順に従って、ダイナミックディスパッチテンプレートからメンバーVIを作成します。

  1. ファイル»開くを選択して、開きたいクラスまたはインタフェースを検索して、新規LabVIEWクラスまたはインタフェースを作成するか、既存のクラスまたはインタフェースを開きます。
    メモ ファイル→開くを選択してクラスまたはインタフェースを開いた場合、プロジェクトエクスプローラウィンドウの代わりにクラスウィンドウが開きます。プロジェクトエクスプローラウィンドウの場合と同様にクラスウィンドウでクラスまたはインタフェースを作成します。
  2. (クラスのみ) クラスのプライベートデータを定義する
  3. プロジェクトエクスプローラウィンドウで、メンバーVIを作成したいクラスまたはインタフェースのプロジェクト項目を右クリックして、新規→ダイナミックディスパッチテンプレートからのVIをショートカットメニューから選択します。新規メンバーVIがプロジェクトエクスプローラウィンドウに表示され、VIが自動的に開きます。VIのフロントパネルに、クラスまたはインタフェース表示器、クラスまたはインタフェース制御器、エラー入力エラー出力クラスタが表示されます。
  4. <Ctrl-E>キーを押して、ブロックダイアグラムを表示します。(macOS) <Option–E>キーを押します。(Linux) <Alt-E>キーを押します。ブロックダイアグラムに、2つのクラスまたはインタフェース端子、エラー入力エラー出力クラスタ、エラー処理用のケースストラクチャが表示されます。
  5. これにより、クラスのプライベートデータにアクセスして操作するメンバーVIを作成できるようになります。

スタティックディスパッチテンプレートからメンバーVIを作成する

LabVIEWでは、スタティックディスパッチメンバーVIを作成するショートカットも可能です。LabVIEWは、エラー処理、入力クラスまたはインタフェース、出力クラスまたはインタフェース用にエラー入力エラー出力クラスタ、およびケースストラクチャを使用して、新規メンバーVIを満たします。スタティックディスパッチVIのコネクタペーンでは、ダイナミックディスパッチVIの場合とは異なり、入出力端子がダイナミックとして設定されません。以下の手順に従って、スタティックディスパッチテンプレートからメンバーVIを作成します。

  1. ファイル»開くを選択して、開きたいクラスまたはインタフェースを検索して、新規LabVIEWクラスまたはインタフェースを作成するか、既存のクラスまたはインタフェースを開きます。
    メモ ファイル→開くを選択してクラスまたはインタフェースを開いた場合、プロジェクトエクスプローラウィンドウの代わりにクラスウィンドウが開きます。プロジェクトエクスプローラウィンドウの場合と同様にクラスウィンドウでクラスまたはインタフェースを作成します。
  2. (クラスのみ) クラスのプライベートデータを定義する
  3. プロジェクトエクスプローラウィンドウで、メンバーVIを作成したいクラスまたはインタフェースのプロジェクト項目を右クリックして、新規→スタティックディスパッチテンプレートからのVIをショートカットメニューから選択します。新規メンバーVIがプロジェクトエクスプローラウィンドウに表示され、VIが自動的に開きます。VIのフロントパネルに、クラスまたはインタフェース表示器、クラスまたはインタフェース制御器、エラー入力エラー出力クラスタが表示されます。
  4. <Ctrl-E>キーを押して、ブロックダイアグラムを表示します。(macOS) <Option–E>キーを押します。(Linux) <Alt-E>キーを押します。ブロックダイアグラムに、2つのクラスまたはインタフェース端子、エラー入力エラー出力クラスタ、エラー処理用のケースストラクチャが表示されます。
  5. これにより、クラスのプライベートデータにアクセスして操作するメンバーVIを作成できるようになります。

クラスのみ) データメンバーにアクセスするためにメンバーVIを作成する

LabVIEWのメンバーの読み取りまたは書き込みのアクセサVIを素早く作成することができます。読み取りのアクセサVIは、発呼者VIのデータにアクセスできるようにLabVIEWクラスデータをバンドル解除します。書き込みアクセサVIは、発呼者VIから渡すクラスデータの新規値をバンドル解除します。LabVIEWクラスのメンバーでないVIのクラスデータの読み取りまたは書き込みにアクセサVIを使用する場合があります。以下の手順に従って、クラスのデータにアクセスするVIを作成します。

  1. ファイル»開くを選択して、開きたいクラスを検索して、新規LabVIEWクラスを作成するか、既存のクラスを開きます。
    メモ ファイル→開くを選択してクラスを開いた場合、プロジェクトエクスプローラウィンドウの代わりにクラスウィンドウが開きます。プロジェクトエクスプローラウィンドウの場合と同様にクラスウィンドウでクラスを作成します。
  2. クラスのプライベートデータを定義する
  3. プロジェクトエクスプローラウィンドウで、メンバーVIを作成するクラスのアイコンを右クリックして、ショートカットメニューから新規→データメンバーアクセスのためのVIを選択してアクセサを作成ダイアログボックスを開きます。または、LabVIEWクラスのプライベートデータ制御器のデータメンバーを右クリックし、ショートカットメニューからアクセサを作成を選択することもできます。
    メモ このオプションを使用する前にLabVIEWクラスを保存する必要があります。新しいクラスが保存されていないと、データメンバーアクセスのためのVIオプションとアクセサを作成オプションは無効になります。
  4. アクセスするデータメンバー、アクセスタイプ、新しいVIの種類 (ダイナミックまたはスタティック)、データメンバーにプロパティノードを使用してアクセスできるかどうかを指定します。データメンバーにプロパティノードを使用してアクセスできるよう指定すると、そのメンバーVIがプロパティ定義フォルダに追加されます。
    メモ プロパティノードを使用してLabVIEWクラスにアクセスして、選択したデータメンバーがプロパティノードからアクセスできるよう指定すると、LabVIEWクラスプロパティの実相を簡単に表示できます。クラスプロパティを右クリックして、ショートカットメニューからアクセサを開くVIを選択します。このオプションは、LabVIEWクラスまたはLabVIEWクラスを指すデータ値リファレンスをプロパティノードの リファレンス入力に配線し、アクセサVIのブロックダイアグラムが使用できる場合にのみ表示されます。プロパティが1つ以上の実装で動的な場合、このオプションを選択すると実装を選択ダイアログボックスが表示されます。このダイアログボックスを使用してプロパティまたはダイナミックディスパッチメンバーVIのすべての実装を表示し、ひとつ以上の実装を開きます
    <Ctrl>キーを押して、複数のデータメンバーを選択する場合、LabVIEWは各データメンバーに対してアクセサVIを作成します。(macOS) <Option>キーを押します。(Linux) <Alt>キーを押します。ダイアログボックスの読み取りと書き込みを選択する場合、LabVIEWは読み取りアクセスを提供するアクセサVIと書き込みアクセスを提供する別のアクセサVIを作成します。
  5. 作成ボタンをクリックして1つまたは複数のアクセサVIを作成します。プロジェクトエクスプローラウィンドウに、選択した各データメンバおよび各タイプのアクセスに対する新規VIが表示され、VIが自動的に開きます。VIの名前は、Read Numeric.viなど、選択したアクセスタイプとデータメンバーの名前で構成されます。VIのフロントパネルに、LabVIEWクラス表示器、LabVIEWクラス制御器、選択したデータメンバー、エラー入力エラー出力クラスタが表示されます。
  6. <Ctrl-E>キーを押して、ブロックダイアグラムを表示します。(macOS) <Option–E>キーを押します。(Linux) <Alt-E>キーを押します。ブロックダイアグラムに2つのLabVIEWクラス端子、選択したデータメンバー、エラー入力エラー出力クラスタ端子、エラー処理用のケースストラクチャが表示されます。
  7. これで、発呼者VIからのクラスデータを操作できるようになります。

先祖メンバーVIをオーバーライドするためにメンバーVIを作成する

ダイナミックディスパッチ先祖メンバーVIの機能をオーバーライドまたは拡張するダイナミックディスパッチメンバーVIを作成できます。以下の設定がメンバーVIと先祖クラスまたはインタフェースのメンバーVIの両方で同じである場合のみ、メンバーVIは先祖クラスからのメンバーVIをオーバーライドすることが可能です。

ショートカットメニューから新規»オーバーライドのためのVIを選択した場合、LabVIEWは正当なオーバーライドの要件のすべてを満たすオーバーライドのためのメンバーVIを作成します。以下の手順に従って、新規»オーバーライドのためのVIを使用してオーバーライドのためのメンバーVIを作成します。

  1. ファイル»開くを選択して、開きたいクラスまたはインタフェースを検索して、新規LabVIEWクラスまたはインタフェースを作成するか、既存のクラスまたはインタフェースを開きます。新規クラスまたはインタフェースを作成している場合、そのクラスまたはインタフェースにオーバーライドのためのVIを作成する前にクラス/インタフェースを保存する必要があります。
    メモ ファイル→開くを選択してクラスを開いた場合、プロジェクトエクスプローラウィンドウの代わりにクラスウィンドウが開きます。プロジェクトエクスプローラウィンドウの場合と同様にクラスウィンドウでクラスを作成します。
  2. プロジェクトエクスプローラウィンドウで、メンバーVIを作成したいクラスまたはインタフェースのプロジェクト項目を右クリックして、新規→オーバーライドのためのVIをショートカットメニューから選択します。
    メモ 選択するクラスまたはインタフェースがオーバーライド可能なメンバーVIを継承しない場合、オーバーライドのためのVIオプションが淡色表示になります。先祖クラスまたはインタフェースのVIは、オーバーライドできるようにダイナミックディスパッチメンバーVIである必要があります。
  3. 新規オーバーライドダイアログボックスが表示されます。ダイアログボックスに先祖クラスまたはインタフェースが定義するダイナミックメソッドが表示されます。オーバーライドのためのVIを選択します。
  4. OKボタンをクリックします。
  5. 新規メンバーVIがプロジェクトエクスプローラウィンドウに表示され、VIが自動的に開きます。先祖VIアイコンを使用し、新規VIのアイコンを作成する子クラスまたはインタフェースのアイコンマスクをオーバーレイします。さらに、VIのフロントパネルにアクセサVI、LabVIEWクラス表示器、エラー入力エラー出力クラスタからコピーされた制御器と表示器が表示されます。
  6. <Ctrl-E>キーを押して、ブロックダイアグラムを表示します。(macOS) <Option–E>キーを押します。(Linux) <Alt-E>キーを押します。ブロックダイアグラムに先祖メンバーVIからコピーされた端子が表示されます。また、端子が親クラスメソッド呼び出しノードに自動的に配線されます。

これにより、必要に応じて、オーバーライドのためのVIのブロックダイアグラムでコードを変更できるようになります。

メモ 新しく作成されたオーバーライドのためのVIは、最初はメンバーVIの先祖の実装と同様に動作します。オーバーライドのためのVIを使用して、メンバーVIの親の実装から機能を追加または削除することができます。

派生クラスまたはインタフェースでオーバーライドVIが必要なメンバーVIを作成する

派生クラスまたはインタフェースでメンバーVIの機能のオーバーライドまたは拡張が必要なダイナミックディスパッチVIを作成することができます。派生が先祖メンバーVIをオーバーライドする必要がある場合、このVIの実装は派生に対してメンバーVIから提供される必要はありません。デフォルトでは、インタフェースでは派生がメンバーVIをオーバーライドする必要がありますが、クラスでは派生がメンバーVIをオーバーライドする必要はありません。

派生がメンバーVIをオーバーライドする要件を設定するには、以下の手順に従ってください。

  1. ファイル»開くを選択して、開きたいクラスまたはインタフェースを検索して、新規LabVIEWクラスまたはインタフェースを作成するか、既存のクラスまたはインタフェースを開きます。
    メモ ファイル→開くを選択してクラスまたはインタフェースを開いた場合、プロジェクトエクスプローラウィンドウの代わりにクラスウィンドウが開きます。プロジェクトエクスプローラウィンドウの場合と同様にクラスウィンドウでクラスまたはインタフェースを作成します。
  2. プロジェクトエクスプローラウィンドウで、メンバーVIを作成したいクラスまたはインタフェースのプロジェクト項目を右クリックして、新規→ダイナミックディスパッチテンプレートからのVIをショートカットメニューから選択します。新規メンバーVIがプロジェクトエクスプローラウィンドウに表示され、VIが自動的に開きます。VIのフロントパネルに、クラスまたはインタフェース表示器、クラスまたはインタフェース制御器、エラー入力エラー出力クラスタが表示されます。
  3. プロジェクトエクスプローラウィンドウでメンバーVIを作成したクラスまたはインタフェースのプロジェクト項目を右クリックし、プロパティを選択してクラス/インタフェースプロパティダイアログボックスを表示します。
  4. 項目設定を選択して項目設定ページを表示し、派生がオーバーライドするダイナミックディスパッチVIを選択します。
  5. 派生は必ずオーバーライドするチェックボックスをオンにします。派生は各自の実装でこのVIをオーバーライドする必要があるため、このVIの実装を提供する必要はありません。