matumatuのなでしこ学習帳

2007-11-25なでしこ本 P.14の学習(その2)です

なでしこ本 P.14の学習(その2)です

23:59

第1章 基礎編から、「お絵かき」を再度、勉強した。

度は、お絵かき中のマウスのXY座標を表示するため、

ヒントになりそうなサンプルプログラムを探したところ、

下記のプログラム「 旧バージョンでは使用メモリが増えていきます.nako  」

が見つかった。 (プログラム名は、勝手にmatumatuが、名付けました)

このプログラムは、なでしこHP → 開発に参加 → バグの報告

→ イベント発生時のメモリリーク ( 投稿者: canotさん )

より、入手しました。

//サンプル
//マウスを動かすたびに使用メモリが増えていきます
母艦のマウス移動した時は
	Q=母艦のマウスX
	A=母艦のマウスY
	母艦は「{Q},{A}」

このサンプルプログラムを実行すると、

なでしこ旧バージョン(version 1.50046)

では、メモリー使用量が増えていったが、

なでしこ新バージョン(version 1.50047)

では、メモリー使用量が増えるのが解消

されたのを確認しました。

このプログラムが、マウスの座標を表示

する機能があるので、早速まねさせてもらいました。  (^_^;)


そこで、お絵かき中のマウス座標表示機能も追加しました

23:59

下記のプログラム「 お絵かき3.nako 」

を作りました。

canotさんの投稿を利用させてもらった箇所が分かるように、

コメント欄も追加しています。


#-----------------------------------------------------------------------
# 簡単お絵かき
#-----------------------------------------------------------------------
# 描画するかどうかを、マウスフラグで判別して描画します。
#-----------------------------------------------------------------------

#-----------------------------------------------------------------------
# 変数の初期化

マウスフラグは、オフ
XX=0
YY=0
線太さ=4

#-----------------------------------------------------------------------
# マウス関連のイベント

母艦のマウス押した時は~
  マウスフラグは、オン
  始点描画処理
    マウス座標記録

母艦のマウス離した時は~
  マウスフラグは、オフ

母艦のマウス移動した時は~
  もし、マウスフラグがオンならば
      描画処理。

#-----------------------------------------------------------------------
# 実際の描画処理

●始点描画処理
  X=母艦のマウスX
    Y=母艦のマウスY
    W=4
    円(X,Y,X+W,Y+W)

●描画処理
  XX,YYから母艦のマウスX,母艦のマウスYへ線。
    マウス座標記録。

●マウス座標記録
    XX=母艦のマウスX
    YY=母艦のマウスY
#-----------------------------------------------------------------------
# canotさんの「イベントが発生するとメモリ使用量が増えていく
# サンプルプログラムから、ヒントを得た箇所です。
  母艦は「{XX},{YY}」
#-----------------------------------------------------------------------
# フォーム設計時に実行する動作
!母艦設計=『
母艦のテキストは「お絵かき」
「        マウスでキャンバス上をドラッグすると絵が描かれます。」と表示。
』
完成ボタンとはボタン。
そのY=0。
# お絵かき画像を保管
Gとはイメージ。
完成ボタンをクリックした時は~
  必要の間
    「保存しますか?」と二択。
     もし、それがはいならば、抜ける。
     もし、それがいいえならば、戻る。
   # イメージ部品を作る
   Gの画像は「母艦」
   Gを「{デスクトップ}お絵かき.jpg」へ画像保存。
   終わる。

 明日の予定

23:59

 最近の日記を振り返ると、勉強がサクサク進んでいるように

 見えますが、実は公表しているのは、最終結果だけで、

 途中段階では、初心者特有の悪戦苦闘をしています。

おかげて、3連休中、「なでしこ」ばかり熱中して、

 他の用事を全て、放置しました。

 悪戦苦闘の副産物として、下記の現象が出る、非常に

 短いプログラムを偶然、作ってしまいました。

 HDD     :  アクセスランプが点きっぱなしになる。

 Windows :  仮想メモリーが足りなくなる。

 なでしこ    : 「メモリーが足りません」と表示される。

 コメント    : 「なでしこ」は、停止可能で、停止後は

            自動的にメモリー不足が解消されるので、

            データーやHDDを破壊するような、

            悪質なプログラムでは、ありません。

 このようなプログラムで、行数はたった4行ですが、公表してよいか皆さんの

 ご意見を聞くまでは、公表しないで、他の勉強に進んで行きます。

 想定の範囲内では、下記のようなコメントが付くと思っています。

 1.公表すると、悪用されるので、公表しないほうが良い。

 2.しょせん、初心者のプログラムミスが原因と思われる

   ので、公表してパワーユーザーにプログラムの

   コツを教えてもらった方が良い。

 3.万一、「なでしこ」が原因かを、パワーユーザーが

   検証するので、公表したほうが良い。

 4.公表しないで、私にだけ、こっり教えてください。 (^_^;)

  (4.のコメントだけは、無視します)

ゲスト



トラックバック - http://nadesiko.g.hatena.ne.jp/matumatuh18/20071125