Q12:「テーブルの行移動」で、移動させる行のセルの属性(編集可否など)も一緒に移動させるには、どのようにすればよいでしょうか?
Q12-1:
関連ファイルの「Lesson15(テーブル機能拡張)-6.mzax」 (チュートリアルのaplを、テーブルデータだけを変更したものです)で、具体的に質問いたします。テーブルの“**********”のセルは「編集不可」、それ以外は「編集可」に設定してあります。名称“Z”の行を選択して、その行をボタン「↑」で1つ上に移動させた場合、名称“Z”、個別3のセルを「編集可」に、名称“Z”、個別2のセルを「編集不可」にしたい(関連ファイルではセルの属性は変わっていない)。どのようにすればよいか、お教えいただきたく。
関連ファイル:Lesson15(テーブル機能拡張)-6.mzax (※このファイルは、ZIP形式に圧縮してあります。)
A12-1:
サンプルアプリケーション「Lesson15(テーブル機能拡張).mzax」では一旦テーブル格納変数にデータを入れ、メソッドで行の位置インデックスを変更することでGUIのテーブルのデータも移動したようにしています。
変数内ではGUIのテーブルの属性までは保持されていません。
テーブルコンポーネントのメソッドに「isCellEditable」、「setCellEditable」があります。
変更前に「isCellEditable」で該当行の編集可/否の値を取得し、一旦変数等に格納し、行移動後「setCellEditable」で設定をしていただくということになります。
(一行移動した時、入替わった2行分に設定をします)