二十一歩目 お絵かきソフトを作る(1)


 

〜お絵かきソフト〜
     なんか難しそうだよね
     お絵かきソフトなんて・・・でも 今回やるのはたった6行だ・・・
      (しかもこのプログラムを考えるのに1分とかからなかった・・・)
     まあ ただ絵を書くだけというものだけどね
     お絵かきソフトってことはだ マウスの矢印の位置のウインドウに
      点を打てば良いわけだ
 

		
	repeat			;繰り返しの始め
	pset mousex,mousey	;X座標mousex、Y座標mouseyの位置に1ドットの点を表示
	await 5			;待つ
	loop			;repeatヘ戻る

     これを実行するとウインドウの上で矢印を動かせば
     矢印の位置に点が現れてきます
 
     説明いくで〜

   pset mousex,mousey

     これは まったく今までにない命令だね
     でも簡単です(^^)ちゅうかかなり簡単です
     X座標はmousex(つまりマウスのX座標)の
     Y座標はmousey(つまりマウスのY座標)の位置に
     1ドットの点を表示すると言うことです
     1ドットっていうとかなり小さいよね
            (ドットについて忘れた方はここの「ドットとは」を見よ!)
     例えば こうしてみて


	pset 100,100
	stop

     こうしたらウインドウの左上から右に100ドット、下に100ドット
     のところに1ドットの点を描(えが)きます
     こうなります
          
     矢印のさしてるところに1ドットの点があるのが見えますか?
     それです(ちっちぇ〜)
     まあこの点を何回もマウスの矢印のところに繰り返し打ってくってことだ
     psetの使い方は分かったかな?
     じゃあ次行こう

〜改良〜
     では今度は マウスのボタンを押したら
     矢印のところに点を表示するようにしましょう
     ついでに ウインドウも小さくしよう

	
	screen 0,200,200		;ウインドウ0の大きさを変更
	repeat				;繰り返しの始め
	getkey key,1			;キー番号1のキーが押されたらkeyに1を入力
	if key=1:pset mousex,mousey	;keyが1だったら x座標mousex,Y座標mouseyの位置に
					;1ドットの点を表示
	await 1				;待つ
	loop				;repeatヘ戻る

     これを実行すると ウインドウが出ますから
     マウスの左のボタンを押すと(ずーっと押しててもいいです)
      マウスの矢印のとこに黒い点が現れます
        (ペイントと同じです)
     新しい命令だ・・・でも簡単なもんだ

   getkey key,1

     これは stick の時に言ってた もう一つのキーチェックの命令だ
     stick同じでキーの入力をチェックする命令だ
     stick  違うのは キー番号を指定して 指定したキーが押されたら
     変数(この場合key)に どんなキー番号を指定しても変数には1が入ります
     ちなみに 押されていないときには0が入ります
     それに stick とは違い いちいち数字を後ろに入れておかなくても
     押されてる間はずっと変数に1が入り続けます
     普通はstickよりかはgetkeyのほうが使うかもしれません(またしても僕の意見です)
     指定したキー番号はこの場合1です(マウスの左クリック)
     どんなキー番号を指定して その指定したキーを押しても 変数に入るのは
       1です
     (ちなみに getkey key,1 として、スペースや Enterキーを押しても
      keyには1は入りません あくまで指定したキーだけを検出するのです)
     まあgetkeyは stick とは違って 一つのキーの情報しかわからないから
     知りたいキーの分だけ getkey と書かないといけないけどね(^^;)
     getkeyのキー番号についてはstickとはちゃうので
     stickのときと同じようにダウンロードにあるソフトを使えばキー番号を
     キーを押すだけで知れますのでそれを使ってください

〜描画色〜
     ちなみにココで描画色についてはなしときます

描画色とは・・・

    ウインドウでいうと描画先とかありましたが

    これとはちょっと違います 描画色と言うのは

    color で指定した色のことです(そのままやん)

    で 例えばcolor 255,255,255として

    その下にmes "A" さらにその下に mes "B"

    とあったら A と B は白色で表示されます

    これは描画色がcolor命令で白(255,255,255)に

    指定されているからです  一度color命令で

    指定したら mesなんかの色使うもの

          (color命令で変えられるもの)は

    すべてその描画色で描画されます

    もちろん 描画色はcolor命令で何回でも変更できます

    ウインドウの描画先と同じで一番最近に実行された

    color命令の色が描画色です

     
     説明が長くなったが 元に戻すぞ
          pset は指定した位置に1ドットの点を描画すると言うことでした
     でもこれを実行したら パソコンの速度によるけど 
      マウスの左クリックをずーっと押してマウスを動かしてるのに こんな風になるよね
        
     ひょっとして僕のパソコンが遅いだけかもしれませんが(^^;
     左クリックを押したままマウスを動かしたらこんな風になってしまいました
     次回はこれの解決法です

まとめ・・・

      getkey・・・指定したキー番号のキーが押されたら

             変数に1を入力

       getkey key,255

      pset・・・指定した位置に1ドットの点を描画

       pset 100,100

戻る コウザへ ホームへ 次へ