# 状態: 種類と条件

- 状態数
- ランプの状態
- [オペレーション]

## 状態数

ランプで表示する状態数を設定できます。

[種類] | [状態変更条件] | [状態数]
[ビット] | [状態] | 2-32
[ビット] | 2-33
[ワード] | [状態] | 2-256
[ビット] | 2-33
[範囲] | 2-256

## ランプの状態

ランプの状態は、ランプを制御する変数 [種類] とランプの状態を定義する [状態変更条件] の組み合わせによって表すことができます。

- [種類]: [ビット]、[状態変更条件]: [ビット]
- [種類]: [ビット]、[状態変更条件]: [状態]
- [種類]: [ワード]、[状態変更条件]: [ビット]
- [種類]: [ワード]、[状態変更条件]: [状態]
- [種類]: [ワード]、[状態変更条件]: [範囲]

### [種類]: [ビット]、[状態変更条件]: [ビット]

33 個の異なる BOOL 型変数のオン/オフ状態によってランプの状態を変更できます。

[ビット位置]: [下位ビット]

状態 | 状態 0 の変数値 | 状態 1 の変数値 | 状態 2 の変数値 | 状態 3 の変数値 | 状態 4 - 30 の変数値 | 状態 31 の変数値
状態 0 | オフ | オフ | オフ | オフ | オフ | オフ
状態 1 | オン | * | * | * | * | *
状態 2 | オフ | オン | * | * | * | *
状態 3 | オフ | オフ | オン | * | * | *
状態 4 | オフ | オフ | オフ | オン | * | *
... | ... | ... | ... | ... | ... | ...
状態 32 | オフ | オフ | オフ | オフ | オフ | オン

* ビットステータスはオンまたはオフです。

[ビット位置]: [上位ビット]

状態 | 状態 0 の変数値 | 状態 1 の変数値 | 状態 2 の変数値 | 状態 3 の変数値 | 状態 4 - 30 の変数値 | 状態 31 の変数値
状態 0 | オフ | オフ | オフ | オフ | オフ | オフ
状態 1 | オン | オフ | オフ | オフ | オフ | オフ
状態 2 | * | オン | オフ | オフ | オフ | オフ
状態 3 | * | * | オン | オフ | オフ | オフ
状態 4 | * | * | * | オン | オフ | オフ
... | ... | ... | ... | ... | ... | ...
状態 32 | * | * | * | * | * | オン

* ビットステータスはオンまたはオフです。

### [種類]: [ビット]、[状態変更条件]: [状態]

5 つの異なる BOOL 型変数のオン/オフ状態によってランプの状態を変更できます。

状態 | 状態 0 の変数値 | 状態 1 の変数値 | 状態 2 の変数値 | 状態 3 の変数値 | 状態 4 の変数値
状態 0 | オフ | - | - | - | -
状態 1 | オン | - | - | - | -
状態 2 | オフ | オン | - | - | -
状態 3 | オン | オン | - | - | -
状態 4 | オフ | オフ | オン | - | -
状態 5 | オン | オフ | オン | - | -
状態 6 | オフ | オン | オン | - | -
状態 7 | オン | オン | オン | - | -
状態 8 | オフ | オフ | オフ | オン | -
状態 9 | オン | オフ | オフ | オン | -
状態 10 | オフ | オン | オフ | オン | -
状態 11 | オン | オン | オフ | オン | -
状態 12 | オフ | オフ | オン | オン | -
状態 13 | オン | オフ | オン | オン | -
状態 14 | オフ | オン | オン | オン | -
状態 15 | オン | オン | オン | オン | -
状態 16 | オフ | オフ | オフ | オフ | オン
状態 17 | オン | オフ | オフ | オフ | オン
状態 18 | オフ | オン | オフ | オフ | オン
状態 19 | オン | オン | オフ | オフ | オン
状態 20 | オフ | オフ | オン | オフ | オン
状態 21 | オン | オフ | オン | オフ | オン
状態 22 | オフ | オン | オン | オフ | オン
状態 23 | オン | オン | オン | オフ | オン
状態 24 | オフ | オフ | オフ | オン | オン
状態 25 | オン | オフ | オフ | オン | オン
状態 26 | オフ | オン | オフ | オン | オン
状態 27 | オン | オン | オフ | オン | オン
状態 28 | オフ | オフ | オン | オン | オン
状態 29 | オン | オフ | オン | オン | オン
状態 30 | オフ | オン | オン | オン | オン
状態 31 | オン | オン | オン | オン | オン

### [種類]: [ワード]、[状態変更条件]: [ビット]

変数中の各ビットのオン/オフによって、ランプの状態を切り替えます。

状態設定 | 状態 | 変数値
[ビット位置] | [未定義ビット] | ビット 0 | ビット 1 | ビット 2 | ビット 3 - 30 | ビット 31 | ビット 32 以後
[下位ビット] | [無視] | 0 | オフ | オフ | オフ | オフ | オフ | *
1 | オン | * | * | * | * | *
2 | オフ | オン | * | * | * | *
3 | オフ | オフ | オン | * | * | *
... | ... | ... | ... | ... | ... | ...
32 | オフ | オフ | オフ | オフ | オン | *
[使用する] | 0 | オフ | オフ | オフ | オフ | オフ | オフ
1 | オン | * | * | * | * | *
2 | オフ | オン | * | * | * | *
3 | オフ | オフ | オン | * | * | *
... | ... | ... | ... | ... | ... | ...
32 | オフ | オフ | オフ | オフ | オン | *
無効 | オフ | オフ | オフ | オフ | オフ | いずれか 1 つが オン
[上位ビット] | [無視] | 0 | オフ | オフ | オフ | オフ | オフ | *
1 | オン | オフ | オフ | オフ | オフ | *
2 | * | オン | オフ | オフ | オフ | *
3 | * | * | オン | オフ | オフ | *
... | ... | ... | ... | ... | ... | ...
32 | * | * | * | * | オン | *
[使用する] | 0 | オフ | オフ | オフ | オフ | オフ | オフ
1 | オン | オフ | オフ | オフ | オフ | オフ
2 | * | オン | オフ | オフ | オフ | オフ
3 | * | * | オン | オフ | オフ | オフ
... | ... | ... | ... | ... | ... | ...
32 | * | * | * | * | オン | オフ
無効 | * | * | * | * | * | いずれか 1 つが オン

* ビットステータスはオンまたはオフです。

### [種類]: [ワード]、[状態変更条件]: [状態]

関連付けられた変数の値が変わると、ランプの表示状態も変わります。

状態 | 変数値
状態 0 | 0
状態 1 | 1
状態 2 | 2
状態 3 | 3
: | :
状態 255 | 255

[状態数] が設定された状態数より多い場合、[無効] 状態が表示されます。

### [種類]: [ワード]、[状態変更条件]: [範囲]

関連付けられた変数の値による条件によってランプの状態を変更できます。

設定した [条件] の数は、[状態数] -1 です。

例: [状態数] が 5 で、各 [条件] は以下のように設定されています (変数 1 は整数)。

状態 | [条件] | 説明 | 変数値 (X)
状態 0 | X == 0 | 0 に等しい | 0
状態 1 | 0 < X < 50 | 0 より大きく 50 より小さい | 1...49
状態 2 | 50 <= X < 100 | 50 以上 100 未満 | 50...99
状態 3 | 100 != X | 100 ではない | 0...100 以外
状態 4 | (設定なし) | 状態 0 から 状態 3 のどの条件にも当てはまらない値 | 100

[条件] で設定された範囲が状態間で重なっている場合、小さい番号の状態が優先されます。上記の例では、変数値 80 は 状態 2 と 状態 3 の両方の範囲に一致するが、状態 2 が使用されます。

MEMO:

- [状態変更条件] が [範囲] に設定されている場合、[無効] 状態はオブジェクトの色または文字列に適用されません。

## [オペレーション]

タッチ操作の種類/操作プロパティについては、[オペレーション] を参照してください。