忘れな草をなでしこでハックしてみる

NHKの番組テストの花道
「もう忘れない! 中高生からの記憶法」と言う回で面白い記憶法が紹介されてました。
植物の忘れな草の図形をうまくつかっています。




なかなか、理に適ったよさそうな方法です。

早速、簡単な活用アプリを作ってみました。

どうせならば、
"なでしこの絵を図形にしてとも考えましたが絵を描くのが面倒"
だったので、
NHKのサイトに忘れな草の図のダウンロードがあったのでそのまま使わせてもらいました。
アプリの起動には二枚の画像が必要になります。

http://www.nhk.or.jp/hanamichi/p2013/130506.html

ここから、以下の画像を2枚をダウンロードして、

http://www.nhk.or.jp/hanamichi/ref/p2013/130506_dl_1.jpg
http://www.nhk.or.jp/hanamichi/ref/p2013/130506_dl_2.jpg

それを、以下のコードを保存したフォルダと同じ階層にコピーして準備完了です。

詳しい使い方は記事の最後を見てください。

尚、
なでしこを知らない方は"日本語プログラミング言語なでしこ"で検索してみてください
このようなアプリが1時間程度でも作れてしまう凄い言語です。

母艦=`わすれなさそう`
母艦のX=デスクトップX。母艦のY=デスクトップY+20。母艦のW=1200。母艦のH=900。
忘れな草とは忘れな草図。
忘れな草の画像=母艦パス&`130506_dl_1.jpg`
描方画像=母艦パス&`130506_dl_2.jpg`

保存用写真とはイメージ。これについて可視=オフ。

『#親部品名,部品名,テキスト,ショートカット,オプション,イベント
なし,ファイルメニュー,ファイル(&F),,,
-,キャプチャ,画像保存(&P),F5,,画像キャプチャ保存
-,-,,,,
-,閉じるメニュー,閉じる(&C),Alt+F4,,終わる
なし,ヘルプメニュー,ヘルプ(&H),,,
-,描き方メニュー,わすれな草の書き方(&P),F1,,描方画像を起動』をメニュー一括作成。

●画像キャプチャ保存〜
 忘草ラベル[0]がグループ判定でなければ、`保存する前に最低一つ以上のラベルを作成してください`と言って戻る
 パスとは文字列=母艦パス&`わすれなそうイメージ\`
 パスが存在でなければ、パスへフォルダ作成
 Fとは文字列=(母艦パス&`わすれなそうイメージ\`&忘草ラベル[0]→テキスト&`.jpg`)
 保存用写真へ(母艦のタイトル)を窓内側キャプチャ
 保存用写真をFへ画像保存
 F&` へ保存しました`と言う
 F&`を起動しますか`と二択ならば、Fを起動。

■忘れな草図 +イメージ
 ・{非公開}ラベルインデックス{=0}
 ・{非公開}編集中ラベルOBJ
 ・{非公開}編集処理
 ・{非公開}色選択値

 ・作る〜
  オブジェクト=VCL_CREATE(自身,名前,VCL_GUI_IMAGE)
  自身を自分にグループ参照コピー
  忘草入力窓をエディタとして作成する
  忘草入力窓→可視=オフ
  忘草入力窓→IME=`IMEオン|かな`
  忘草入力窓→W=200
  忘草入力窓→キー押した時は〜
   (忘草入力窓→押された仮想キー=27)ならば、
    忘草入力窓→テキスト=``
    忘草入力窓→可視=オフ
   (忘草入力窓→押された仮想キー=13)ならば、忘草窓入力反映へ

  忘草文字プロパティ入力入力艦をフォームとして作成する
  忘草文字プロパティ入力入力艦→スタイル=`枠なし`
  忘草文字プロパティ色ラベルをパネルとして作成する
  忘草文字プロパティサイズスピンをスピンエディタとして作成する
  忘草文字プロパティ完了ボタンをボタンとして作成する
  
  忘草文字プロパティ色ラベル→親部品=忘草文字プロパティ入力入力艦
  忘草文字プロパティサイズスピン→親部品=忘草文字プロパティ入力入力艦
  忘草文字プロパティ完了ボタン→親部品=忘草文字プロパティ入力入力艦
  
  忘草文字プロパティ入力入力艦→H=140
  忘草文字プロパティ入力入力艦→W=120
  
  忘草文字プロパティ色ラベル→文字色=白色
  忘草文字プロパティ色ラベル→テキスト=`テキストカラー`
  忘草文字プロパティ色ラベル→背景色=黒色
  忘草文字プロパティ色ラベル→レイアウト=`上`
  忘草文字プロパティ色ラベル→H=50
  忘草文字プロパティ色ラベル→クリックした時は〜文字色切替へ
  
  忘草文字プロパティサイズスピン→レイアウト=`全体`
  忘草文字プロパティサイズスピン→文字サイズ=24
  忘草文字プロパティサイズスピン→最小値=8
  忘草文字プロパティサイズスピン→最大値=50
  忘草文字プロパティサイズスピン→変更した時は〜
   編集中OBJ→文字サイズ=忘草文字プロパティサイズスピン→テキスト
   編集中OBJ→テキスト=編集中OBJ→テキスト
   
  忘草文字プロパティ完了ボタン→レイアウト=`下`
  忘草文字プロパティ完了ボタン→テキスト=` 入 力 完 了 `
  忘草文字プロパティ完了ボタン→H=50
  忘草文字プロパティ完了ボタン→クリックした時は〜
   忘草文字プロパティ入力入力艦→閉じる

 ・文字色切替〜
  Aとは配列=`0,16711680,255,65280,16711935,65535`を`,`で区切る
  自分→色選択値=自分→色選択値+1
  忘草文字プロパティ色ラベル→背景色=A[自分→色選択値]
  編集中OBJ→文字色=A[自分→色選択値]
  (自分→色選択値>5)ならば、自分→色選択値=-1
  
 ・忘草窓入力反映〜
  忘草入力窓→可視=オフ
  自分→編集処理でなければ、文字ラベル作成へ
  自分→編集処理ならば、編集処理中忘草窓入力反映へ

 ・マウス押した時は〜
  忘草入力窓→X=自分→マウスX
  忘草入力窓→Y=自分→マウスY
  忘草入力窓→可視=オン
  忘草入力窓→注目

 ・文字ラベル作成〜
  (忘草入力窓→テキスト=``)でなければ、
   忘草ラベル[自分→ラベルインデックス]をラベルとして作成
   忘草ラベル[自分→ラベルインデックス]→X=忘草入力窓→X
   忘草ラベル[自分→ラベルインデックス]→Y=忘草入力窓→Y
   忘草ラベル[自分→ラベルインデックス]→テキスト=忘草入力窓→テキスト
   忘草ラベル[自分→ラベルインデックス]→マウス押した時は〜自分→忘草ラベル編集処理へ
   忘草入力窓→テキスト=``
   自分→ラベルインデックス=自分→ラベルインデックス+1     

 ・忘草ラベル編集処理〜
  イベント部品を編集中OBJにグループ参照コピー
  (編集中OBJ→押されたボタン=`右`)ならば、
   忘草文字プロパティ入力入力艦→X=自分→マウスX-130
   忘草文字プロパティ入力入力艦→Y=自分→マウスY+20
   忘草文字プロパティ入力入力艦を最前面
   自分→色選択値=0
   忘草文字プロパティ入力入力艦→モーダル表示
   
  (編集中OBJ→押されたボタン=`左`)ならば、
   編集処理=はい
   忘草入力窓→テキスト=編集中OBJ→テキスト
   忘草入力窓→可視=オン
 
 ・編集処理中忘草窓入力反映〜
  編集中OBJ→テキスト=忘草入力窓→テキスト
  忘草入力窓→テキスト=``
  編集中OBJ→可視=オン。自分→編集処理=オフ
  

■使い方
●ラベル新規作成
・画像の文字を書きたいところでクリックを押すと文字が入力できます。
・左クリックで文字のサイズと色を変えられます。

●ラベル削除
・いらなくなったラベルの上で左クリックを押しテキストを空にする。

●その他の機能
・入力中の文字入力の取り消しはEscボタンで入力中の文字を消せます。
・作成した画像の保存や描き方の表示は画面上のメニューから行えます。