*Notは、ブール値の逆の結果をテストしたり、設定したりするときに使用します。
例えば、以下のようになります。
If (*Not #Object.Boolean)
または
#button.enabled := *not #button.enabled
「良い」結果と「悪い」結果を定義するために複雑な論理処理が必要な場合は、ブール値を返すメソッドの中にコードをカプセル化するのが望ましい方法です。その点で便利なのが、逆の結果に基づく処理を実行するために使用できる*Notです。
Evtroutine Handling(#STD_NUM.Changed) If (*Not #COM_OWNER.IsValidEntry( #STD_NUM )) * Do something Endif Endroutine Mthroutine Name(IsValidEntry) Define_Map For(*input) Class(#STD_NUM) Name(#NUMBER) Define_Map For(*RESULT) Class(#prim_boln) Name(#RESULT) #RESULT := False If ((#NUMBER > 100) *And (#NUMBER < 200)) #RESULT := true Endif If ((#NUMBER > 300) *And (#NUMBER < 400)) #RESULT := true Endif Endroutine