HSP sun 無料WINDOWSプログラミングソフト

HSP HSPプログラミング講座 [3]

○ 画像ファイルを読込むんで表示する

HSPのウィンドウに画像(イメージファイル)を表示するには「picload」命令を使います。対応しているイメージファイル(画像形式)は、bmp(ビットマップ)、gif、jpg、ico(アイコン)の4つです。ファイルのパスの区切りに円記号「\」を2コで「\\」にしています。HSPのスクリプト内ではこのように書かないとパスとして認識されません。(1つ前の講座参照)

	pos 100,100
	picload "C:\\Program Files\\HSP30a\\docs\\hsp3ttl.jpg",1

	stop

 上で指定した場所に画像ファイルがない場合はエラーがでます(HSPを導入している環境に合わせて変更して下さい)。通常はスクリプトエディターの下層にあるフォルダであれば、下のようにしておけば問題ないはずです。(相対パス)

	pos 100,100
	picload "docs\\hsp3ttl.jpg",1

	stop

「pos」命令は画像の左上部分の表示位置として指定します。ちなみに、そのまま画像の上に「mes」命令の文字表示ができます。図形も描画させることができます。

	pos 100,100
	picload "docs\\hsp3ttl.jpg",1

	pos 150,150
	color $FF
	mes "文字だよ〜ん"

○ 画像の一部分を表示する

上では単純に指定した画像を表示したわけですが、必要な一部分だけ画像をコピーすす場合です。ウィンドウ間の描画を切り取りコピーする「gcopy」命令を使います。この時「gsel」命令を使って操作先のHSPウィンドウを切り替えます。

	screen 1
//	buffer 1

	picload "docs\\hsp3ttl.jpg"

//	描画先をメインのウィンドウID0に切り替え
	gsel 0

//	ウィンドウID1からコピーしてくる
	gcopy 1,50,50,100,100

	stop

ウィンドウID1に「buffer」命令で、バッファウィンドウを表示しています。簡単に言ってしまえば裏側で表示される目に見えない非表示ウィンドウです。(ここでは分かるようあえて「screen」命令にしています。)

必要な画像をあらかじめ読み込んでおいて、必要なパーツをそのときに持ってくれば効率いいです。下は、マウスを押してペタペタはってしまうサンプルです。「pos」命令がコピーされる位置です。

//	マウスのボタンを押した時に飛ぶラベル指定
	onclick *click

//	目にみえないバッファウィンドウ
	buffer 1

	picload "docs\\hsp3ttl.jpg"

//	描画先をメインウィンドウ0に変更
	gsel 0

	stop

*click
//	mousexとmouseyはマウスの矢印の位置が入ってる
	pos mousex,mousey

	gcopy 1,50,50,100,100

○ その他の画像コピー

 「gcoy」命令以外にも、HSPでは大きさを拡大/縮小してコピーする「gzoom」命令といういのがあります。

//	マウスのボタンを押した時に飛ぶラベル指定
	onclick *click

	screen 1

	picload "sample\\demo\\onibtn.gif"

	gsel 0

	stop

*click
	pos mousex,mousey

;	左クリックなら2倍サイズ
	if wparam= 1{
		gzoom 136*2,50*2,1,0,0,136,50
	}

;	右クリックなら1/2サイズ
	if wparam= 2{
		gzoom 136/2,50/2,1,0,0,136,50
	}

< 前へ | 次へ >

アバウト

HSP sun」へようこそ。こちらは無料のスクリプト言語システム「HSP」の講座ページです。このサイトはリンクフリーです。

HSP3講座メニュー

Copyright(c) HSP sun [HSP]

inserted by FC2 system