オブジェクト分岐の利用方法について

MZ Platformとは 掲示板 MZプラットフォームユーザー会掲示板 オブジェクト分岐の利用方法について

3 件の投稿を閲覧中 - 1 ~ 3 件(全 3 件)
  • 著者
    投稿
  • #4655
    kyamanaka
    一般参加者

    ラジオボタンを押下で項目を切り替えた時に、異なる処理をするアプリケーションを開発したいと考えております。
    このときに、オブジェクト分岐コンポーネントを使用してSwitch文相当の記載をしようとしました。
    以下の手順で設定しましたが、オブジェクト分岐判定で想定した動作となりませんでした。
    (1)オブジェクト分岐-分岐用テーブルに条件を追加
    イベント番号:固定値で0
    比較オブジェクト:固定値で0
    (2)オブジェクト分岐-オブジェクトの一致判定を実行する
    判定するオブジェクト:メソッド戻り値-ラジオボタンの位置を取得

    ラジオボタンで1つめの項目を選択しても、オブジェクト分岐の判定ではオブジェクトと一致せずの結果となりました。

    お手数ですが、オブジェクト分岐の使用方法をご教授ください。

    #4656
    MZPlatformユーザー会
    サイト管理者

    ご存知かもしれませんが、ラジオボタンで処理を切り替える場合、ラジオボタンのデータ選択イベントの番号で処理を分岐する方法が簡単です。

    また、ラジオボタンのデータ選択イベントを使わない場合は、何らかの処理中に選択位置を等価演算で判定する方法がシンプルです。選択肢の数が少なくて固定のときは、こちらをおすすめします。

    オブジェクト分岐が適しているのは、選択肢が多かったり動的な場合や、比較対象がオブジェクトである場合です。選択位置などの数値は、オブジェクトに変換されたものが厳密に何であるかによって動作が変わるので、逆にわかりにくくなってしまいお勧めできません。確かに、お試しいただいた方法では、想定した動作にならないと思います。

    すべての場合について、実装例を示したサンプルアプリを圧縮したZIPファイルを添付しますので、展開してビルダーで中身をご確認ください。オブジェクト分岐については、分岐条件テーブルを属性情報編集の画面でCaseTableの変更から指定しています。ここでは選択位置を文字列に変換することで、比較が成功するように工夫しています。

    添付ファイル:
    #4658
    kyamanaka
    一般参加者

    今回は、ラジオボタン選択時に判定したいという場合のほかに、ラジオボタン以外のボタンをクリックしたときにも判定をしたかったため、このような質問をさせていただきました。

    分岐条件テーブルの作成の仕方もご教授いただきありがとうございました。

    ご教授いただいた選択位置を文字列に変換する方法になるのですね。
    ラジオボタンの選択位置は、クラスがIntegerだったためCaseTableのオブジェクトの型を整数にして判定オブジェクトとしてラジオボタンの選択位置を設定してみたのですが、うまくいきませんでした。

3 件の投稿を閲覧中 - 1 ~ 3 件(全 3 件)
  • このトピックに返信するには、ログインしてください。