ケースストラクチャを使用して、ストラクチャに渡す入力値を基に実行する複数のケースサブダイアグラムを指定します。

ケースストラクチャには以下のコンポーネントが含まれます。

図 17. ケースストラクチャの各部
LabVIEWのラベル付きケースストラクチャ。セレクタラベル、サブダイアグラム、およびケースセレクタの主要コンポーネントを示します。
  1. セレクタラベル: 関連付けられたケースが実行されるための値を表示します。単一値または値の範囲を指定できます。下矢印をクリックして、メニューからどのサブダイアグラムを表示するかを選択します。横の矢印をクリックして、サブダイアグラムを切り替えます。
  2. サブダイアグラム (ケース): ケースセレクタに配線された値がケースセレクタラベルの値と一致したときに実行されるコードを格納します。サブダイアグラムの数または順序を変更できます。順序はセレクタラベルメニュー内の順序のみを決定し、コードの実行方法は決定しません。
  3. ケースセレクタ: 入力データの値に基づいて実行するケースを選択します。入力データには、ブール、文字列、整数、列挙体、またはエラークラスタが可能です。ケースセレクタに配線されたデータタイプにより、セレクタラベルに入力できるケースが決まります。

ケースストラクチャを作成し、ケースサブダイアグラムの値を指定するには、次の手順を実行します。

  1. ブロックダイアグラムにケースストラクチャを追加します。

    ケースストラクチャは、関数 » プログラミング » ストラクチャパレットにあります。

  2. サポートされているデータタイプの入力値をケースセレクタ (LabVIEWのCaseストラクチャのケースセレクタグリフ。) に配線します。

    ケースストラクチャがケースセレクタで受け取るデータによって、実行されるサブダイアグラムが決まります。ケースセレクタのデータがセレクタラベルに一致すると、サブダイアグラムが実行されます。

    ケースセレクタは、ケースストラクチャの左側の枠の上の任意の場所に配置できます。

    異なるデータタイプをケースセレクタに配線します。セレクタラベルの値と使用できるサブダイアグラムの数は、表に示すようにデータタイプによって異なります。

    表 26. ケースストラクチャデータタイプの有効なサブダイアグラム
    サポートされているデータタイプ ケースストラクチャのサブダイアグラム
    ブール ストラクチャにはTrueケースとFalseケースがあります。
    エラークラスタ デフォルトでは、ストラクチャにはエラーケースとエラーなしケースがあります。

    また、エラークラスタを使用して、ケースストラクチャの数値エラーコードで特定のエラーを処理することもできます。

    • 整数
    • 文字列
    • 列挙体
    ユーザ定義。ストラクチャは任意の数のケースを含むことができます。
    ヒント トンネルをケースセレクタに変換できます。これを行うには、トンネルを右クリックしてケースセレクタと置換を選択します。以前のケースセレクタが配線されている場合、LabVIEWは以前に配線されたセレクタをトンネルに変換します。また、ケースセレクタと置換メソッドを使用してトンネルをケースセレクタにプログラム的に変換することもできます。
  3. ケースストラクチャの内側にオブジェクトを追加してケースストラクチャで実行可能なサブダイアグラムを作成します。

    必要に応じて、サブダイアグラムを追加または複製できます。

    ヒント ケースストラクチャのデフォルトサブダイアグラムを指定すると、入力ごとに固有のサブダイアグラムを作成する必要がなくなります。
  4. 各ケースでは、ラベリングツールを使用して、ケースストラクチャの上部のセレクタラベルに単一の値または値のリストと値の範囲を入力します。

    セレクタラベルでは、以下のように、1つの値を入力するか、複数の値にまたがることができます。

    オプション説明
    境界範囲

    上境界と下境界の両方で値の範囲を指定します。

    構文: 値間の..

    例: x..z

    オープンエンド範囲

    上境界または下境界で値の範囲を指定します。

    構文: 値の前または後に..

    例: ..xまたはx..

    リスト

    不連続値または複数の値セットを指定します。

    構文: 値間の,

    例: x, z

    リストと範囲を同じセレクタラベルに組み合わせることができます。

    ヒント キーボードでEnterを使用すると、状況によっては改行を入力できます。代わりにデータを確実に受け入れるには、テンキーのEnterまたはEnter Textボタン () を使用します。
    メモ 値と範囲の動作は、ケースセレクタに配線するデータタイプによって異なります。入力可能な値とその動作の詳細については、「入力データタイプによるケースセレクタラベルの動作」を参照してください。
    各セレクタラベルに入力した値は、ストラクチャに渡す入力値に基づいて、特定のサブダイアグラムを実行します。

    ケースセレクタに配線されたオブジェクトとして同じタイプでないセレクタラベル値を入力した場合、この値は赤で表示されます。これは、VIが実行されないことを示します。この問題を解決するには、サブダイアグラムを削除するか、値を有効な値に編集してください。

ケースストラクチャの例

ケースストラクチャを使用するサンプルについては、labview\examples\Structuresディレクトリにある「ケース構造 ― セレクタデータタイプ」VIを参照してください。