このブログの内容が難しい方へ

もし、内容が難しくて理解出来ない場合には、Cプログラミング入門以前などのプログラミングを始める前に知っておくと良い事が書いてある本を読んでから、その後にやさしいC 第3版 [やさしいシリーズ]などのC言語というプログラミング言語の入門書を読むことをお勧めします。また、MIDIの知識がない人は、コンプリートMIDIブックなどがお勧めです。そこまで理解できれば、KSP特有の作法は、このブログを参考にすれば大丈夫だと思います。

2011年9月3日土曜日

save_array()とload_array()

save_array()は、配列の値を外部のファイルに保存します。load_array()は、外部のファイルに保存した配列の値を取り出します。第1引数には配列を渡し、第2引数は、0の時にはダイアログを表示し、1の時にはリソースコンテナを使います(リソースコンテナについては後日説明します)。0の時には、ui_callbackかpgs_callback内でしか使えません。1の時には、init callbackでしか使えません。では、以下のコードを見てください。

on init
	declare %Array [10] := (0,1,2,3,4,5,6,7,8,9)
	declare ui_menu $Menu
	add_menu_item($Menu,"Save",0)
	add_menu_item($Menu,"Load",1)
	declare ui_table %Table[10](3,3,10)
	declare $i
end on

on ui_control ($Menu)
	select($Menu)
		case 0
			$i := 0
			while($i < 10)
				%Array[$i] := %Table[$i]
				$i := $i + 1
			end while
			save_array(%Array,0)
		case 1
			load_array(%Array,0)
			$i := 0
			while($i < 10)
				%Table[$i] := %Array[$i]
				$i := $i + 1
			end while
	end select
end on

メニューにて、Saveを選択した時には、テーブルの値を配列Arrayにコピーした後、ファイルに保存するダイアログが表示されます。Loadを選択した時には、ダイアログが表示され、ファイルを選択し、配列Arrayeに値が読み込まれ、テーブルの値にコピーします。テーブルを適当にクリックして、値を変更したら、メニューでSaveを選んで、適当な名前を付けて、デスクトップに保存してください。そのファイルをテキストエディタで開くと、どのようなファイルになっているか分かります。

0 件のコメント:

コメントを投稿