このブログを検索

2012年11月14日水曜日

チェックボックス(随時)・GUIビルダー版

■今日もI様ネタ

   さて、今日もかりんとうをポリポリしながらおべんきょ中です。
   
   昨日に引き続き、このブログを読んでくださっているI様からのコメントを
   ベースにふむふむ〆(・ω・。)したいと思います。

              (コピペ元 : 2012/11/09 チェックボックス(随時)
     
   
   コメント内の「GUIビルダーを使うとダメ!の件」とは、この記事についてです。

   GUIビルダーを使ってチェックボックスを実装すると、一番最後にチェックしたものしか
   認識されない、という事象について書いた記事でした。


■GUIビルダーでもできるらしい

   この事象について調べてくださった結果((嬉´∀`嬉))
      
        【ユーザプロパティ】あるいは【スクリプトプロパティ】

   というものを使うことで、選択されたチェックボックスの値をすべて取得できるそうです!


   ちなみに、ユーザプロパティ/スクリプトプロパティは、以下の画面で確認できます。
    ・スクリプトエディタ → ファイル → プロジェクトのプロパティ


   ・タブの切り替え → ユーザプロパティ / スクリプトプロパティ


   で、サンプルとして書いてくださったのが、こちらのスクリプト。

  (コピペ元 : https://gist.github.com/4063799


   スクリプト内に//でコメントを書いてくださっていますが、さらに自分の言葉で追記すると、
   以下のような感じで処理が動くようになっているのだと思います。

    9~11行目  : ユーザプロパティのプロパティと値を初期設定する。
                例) (red , false)



    20~31行目 : チェックで選択された色を変数”color”に格納する。
                例) 赤を選択した場合、 color = red



    33~37行目 : 上記で変数”color”に格納された色のユーザプロパティの値を
              変更する。
                例) color = redの場合、(red , false)→(red , true) 



    41~57行目 : 上記のユーザプロパティの値がtrueの場合、色を変更する。
                例) (red , true)の場合、ラベルの色を赤色にする。

ふむむむむ。なんだか大変だわね。
   今回のチェックボックスのように、随時何か処理をするようなスクリプトには、
   ちょっと向いていないのかも・・・???とか言ってみたりして。

   ですが、このユーザプロパティ(あるいはスクリプトプロパティ)、フォームを自作する際には
   結構使えるのでは(o→ܫ←o)??


■予告編

   と、いうことで、次回はこのユーザプロパティを利用して「チェックボックスを選択後、
   ボタン押下でスプレッドシートに選択されたチェック項目を保存する」、というスクリプトを
   作ってみようと思いま~す♪