変数 $reason で返されるコールバックの理由は、アクションが起こった理由を示します。
変数の値はどの種類のアクションにも設定されますが、アクションが edit_box、list_box、image_button、slider タイルに関連するときにのみ検査する必要があります。それぞれのコールバックの理由コードの値の概要は、次のとおりです。
これは、ほとんどのアクション タイルの値で、ユーザがタイルを選択したことを示します(そのタイルが既定で、プラットフォームがアクセラレータ キーを認識する場合は、[Enter]を押してタイルを選択した可能性があります)。
ユーザが[Tab]を押すことにより、または別のタイルを選択することにより編集ボックスを終了したが、最終的な選択をしていないことを示します。これが編集ボックスのコールバックの理由である場合、アプリケーションは関連する変数の値を更新するのではなく、編集ボックス内の値の有効性をチェックする必要があります。
ユーザがインジケータをドラッグする(またはそれに相当するアクションを行う)ことによりスライダの値を変更したが、最終的な選択をしていないことを示します。これがスライダのコールバックの理由である場合、アプリケーションは関連する変数の値を更新するのではなく、スライダのステータスを表示する文字を更新する必要があります。
このコールバック理由は必ずコード 1 の後に続きます。これは通常、直前の選択を「確定する」ことを意味します。直前の選択を取り消すとユーザが混乱するので、絶対に避けてください。
ユーザが複数の項目を選択できるリスト ボックス(multiple_select = true)は、ダブルクリックをサポートできません。