| 
 | 
 
 
 
 
 |  | 
2007/11/18(Sun) 01:14:29|NO.12476 
こんばんわ。musicです。教えていただきたいことが...。
 1.画像Aを表示(picload"a.gif")
 2.背景を画像にして、タイマーを実行する
 
 単純なことだと思いますが、
 画面が書き換わる際、画像も消えてしまいます。
 背景を残したまま時間を計るには、どのような命令を使えばいいでしょうか?
 ググってみても出てこないし、検討もつがず困っています。
 よろしくお願いします。
 
 | 
 
 
 
 |  | 
2007/11/18(Sun) 01:27:42|NO.12477 
 どんな風にやっているかわからないのでなせ消えるのかがわからず(clsかboxfで消している?)
 消える理由がわからなければ残す方法もわかりませんが、
 一般的にはというか、最も普通のやり方は以下のようなものです。
 
 bufferにpicloadしてgcopyで表示。
 消えたらまたgcopy。
 
 | 
 
 
 |  | 
2007/11/18(Sun) 05:33:20|NO.12480 
ありがとうございます。boxfで消えていました。
 boxfをなくしたところ、画面ちらつきました。
 たしか、前にもこんなことあったような気がするのですが、
 redrawだったかな...???よく覚えてないのですが、
 以前にもここで同じ質問をしたと思うので、
 その時のやつが残っていると思うのですが、
 検索しても出てきませんでした。
 いったいどのように検索したらいいのでしょうか?
 よろしくお願いします。
 
 | 
 
 
 |  | 
2007/11/18(Sun) 11:02:04|NO.12483 
エディタにredrawと打ってF1キー押してredrawのヘルプを読めばいいかと思われます。
 因みに「過去ログから検索」で「ちらつき」といれて検索しても出てきます。
 サイト内検索でも出てきますよ。
 以前質問したなら以前のご自身のスクリプトを見直せばあるのでは?
 
 | 
 
 
 |  | 
2007/11/18(Sun) 17:50:47|NO.12485 
repeatredraw 0
 ;実行するプログラム
 redraw 1
 wait 1
 loop
 でいいと思われるが、これでどうなろうが保証せん
 解決したらチェックしら
 
 | 
 
 
 |  | 
2007/11/23(Fri) 16:51:07|NO.12560 
やっぱりちらつきました...。 
redrawでは出来ませんでした。 
以下のスクリプトに、cls 2 で灰色にしたいだけなんですけれど。 
よろしくお願いします。
 #include "mod_counttimer.hsp"
	//	タイマーの準備。
	make_timer t
	pause_count t
	reset_count t
	pos 0, 24
	button gosub "start/stop", *start
	button gosub "lap/reset", *lap
	font msgothic, 16
	px = 0
	py = 72
	repeat
		//	タイマーのカウント中か一時停止中かで待ち時間を変える。
		if ( f == 0 ) {
			wait 3
		} else {
			await 1
		}
		//	現在の経過時間の取得、表示。
		gosub *drawtime
	loop
	stop
*start
	//	タイマーのカウント/一時停止の切り替え。
	if ( f != 0 ) {
		pause_count t
		f = 0
	} else {
		resume_count t
		f = 1
	}
	return
*lap
	if ( f != 0 ) {
			//	カウント中は現在の経過時間をラップタイムとして取得、表示。
		get_count t
		pos px, py
		mes strf( "%8.3f", refdval / 1000 )
		py += 16
	} else {
			//	一時停止中は経過時間をリセット。
		reset_count t
		px += 64
		py = 72
	}
	return
*drawtime
	//	現在の経過時間の取得、表示。
	get_count t
	redraw 0
	font "",140
	color 255, 255, 255
	boxf 0, 0, 600, 800
	color 100, 0, 0
	pos 100, 200
	mes strf( "%8.3f", refdval / 1000 )
	redraw 1, 0, 0, 600, 800
	return
 | 
 
 
 
 
 |  | 
2007/11/28(Wed) 22:40:32|NO.12629 
musicです。ありがとうございました。clsの代わりにboxfやcolorを使えばいいんですね。
 これをjpgとかの画像にしたい場合は、
 boxfやcolorは使えませんよね?
 picloadではない、また別の命令を使うのですよね?
 まったく見当も付かないのですがどのような命令を使えばいいですか?
 よろしくお願いします。m(_ _)m
 
 | 
 
 
 |  | 
2007/11/29(Thu) 16:01:44|NO.12633 
colorやboxfのところをgcopyにすればいいと思います。 
下は、読み込んで表示した画像の上に文字とループ回数を表示します。
 name=dirinfo(1)+"\\sample\\demo\\sky_bg.jpg"
	exist name
	if strsize=-1 :end
	buffer 1,,,0
	picload name
	screen 0,640,480
	repeat
	redraw 0
	pos 0,0
	gcopy 1,0,0,640,480
	mes "画像の上に文字が表示されます"
	mes "ループ回数 "+cnt
	redraw 1
	wait 1
	loop
 | 
 
 
 |  | 
2007/11/29(Thu) 21:56:39|NO.12641 | 
 
 
 |  | 
2007/12/30(Sun) 05:44:59|NO.12940 
musicです。回答ありがとうございますm(_ _)m 
KENTAさんのスクリプトを試してみました。
>>name=dirinfo(1)+"\\sample\\demo\\sky_bg.jpg" 
で、画像ファイルを変えたところ、
>>if strsize=-1 :end 
の影響で終了してしまいました。 
strsizeは読み出しバイト数のことですが、 
strsize=-1というのはどのような意味でしょうか?
 #include "mod_counttimer.hsp"
	//	タイマーの準備。
	make_timer t
	pause_count t
	reset_count t
	pos 0, 24
	button gosub "start/stop", *start
	button gosub "lap/reset", *lap
	font msgothic, 16
	px = 0
	py = 72
	repeat
		//	タイマーのカウント中か一時停止中かで待ち時間を変える。
		if ( f == 0 ) {
			wait 3
		} else {
			await 1
		}
		//	現在の経過時間の取得、表示。
		gosub *drawtime
	loop
	stop
*start
	//	タイマーのカウント/一時停止の切り替え。
	if ( f != 0 ) {
		pause_count t
		f = 0
	} else {
		resume_count t
		f = 1
	}
	return
*lap
	if ( f != 0 ) {
			//	カウント中は現在の経過時間をラップタイムとして取得、表示。
		get_count t
		pos px, py
		mes strf( "%8.3f", refdval / 1000 )
		py += 16
	} else {
			//	一時停止中は経過時間をリセット。
		reset_count t
		px += 64
		py = 72
	}
	return
*drawtime
	//	現在の経過時間の取得、表示。
	get_count t
	redraw 0
	font "",140
	color 255, 255, 255
	boxf 0, 0, 600, 800
	color 100, 0, 0
	pos 100, 200
	mes strf( "%8.3f", refdval / 1000 )
	redraw 1, 0, 0, 600, 800
	return
 
の背景に画像を入れたいだけなんですけど... 
いろいろ試しているのですが... 
redraw間のスクリプトの書き方がどうしても分かりません>< 
一応、自分なりにヘルプやグーグルで調べてみましたが、全然分かりません。 
すいませんがよろしくお願いします><
|  
 |  | 
 
 
 |  | 
2007/12/30(Sun) 09:49:59|NO.12942 
>strsize=-1というのはどのような意味でしょうか?ヘルプブラウザでexist命令の説明をちゃんとチェックしてください。
 
 | 
 
 
 |  | 
2007/12/31(Mon) 15:14:08|NO.12958 
>strsize=-1というのはどのような意味でしょうか?
Kpanさんが言っているようにヘルプブラウザの説明を見てください。
>背景に画像を入れたいだけなんですけど... #include "mod_counttimer.hsp"
 
のあとに
 buffer 1,,,0
	picload "画像ファイル名"
	screen 0,640,480,0
 
を追加して、
 redraw 0
	font "",140
	color 255, 255, 255
	boxf 0, 0, 600, 800
	color 100, 0, 0
	pos 100, 200
	mes strf( "%8.3f", refdval / 1000 )
	redraw 1, 0, 0, 600, 800
 
のところを
 redraw 0
	font "",140
	pos 0,0
	gcopy 1,0,0,640,480
	color 100, 0, 0
	pos 100, 200
	mes strf( "%8.3f", refdval / 1000 )
	redraw 1
 
に変更してみてください。
 | 
 
 
 |  | 
2008/1/7(Mon) 19:22:47|NO.13027 
出来ました。何か少し勘違いしていたようです。
 ヘルプはちゃんと見たつもりだったんですがね。
 ありがとうございました。
 
 | 
 
 
 |