Nanashi-softプログラマ専用Zaurus SZAB


☆Zaurus SZAB -C言語 文字表示

チュートリアルを見ると、リソースに文字を定義し、ボタンの上にはるように説明されています。
ですが、ゲーム制作でそんなトロい事をやってられません。

○下準備から

まずは、普通にプロジェクトを新規作成します。

メニューのプロジェクト(P)→新規作成(N)
プロジェクト新規作成画面での各項目は、以下のように設定します。

・アプリケーション識別名
 これは、ソフト毎に割り当ててもらう記号です。
 http://more.sbc.co.jp/download/szabtrial/appliid.asp
 このページを見て、メールを送って発行してもらいましょう。

 とりあえずテストしてみるとか、自分だけで使うのであれば、適当に入力しても構いません。
 ここでは testと入力してみることにします。
 ちなみに、この識別名には大文字小文字の区別は無いらしいです。
・アプリケーション名
 英数字で付けますが、その際スペースは使えません。
・開発者名
 普通は自分の名前を記入します。
・プロジェクトディレクトリ
 好きな場所で良いですが、フォルダ名にスペースや日本語が通らないようにして下さい。
・画面サイズ
 1/4VGA:横長タイプ(320×240)
 VGA:640×480タイプ
 縦1/4VGA:縦長タイプ(240×320)

プロジェクトを生成したら、必ず必要なフォームを追加します。

メニューの構成品(C)→新規作成(N)→フォーム(F)
フォーム新規作成画面が表示されますので、一番左の新規をダブルクリック
ファイル名をとわれますので、適当に form1とでも付けて保存。

フォームエディタを起動し、何でもいいからコントロールを1つ置いて閉じる。
なぜなら、フォーム上に何か1つはコントロールが無ければコンパイルが通らない為です(謎)

○文字表示

コントロールを使えば楽ですが、今ひとつ自由度に欠けます。
斜めに書いてみたり、影付きにしてみたり、何でも自由に行いたいものです。
そこで、ここではフォームに直接絵画する方法を取ります。

最初にいきなりつまづいたのが、「プログラムはどこに書けばよいのか?」というところでした。
コントロール上であれば問題ありませんが、直接描いた場合、変なタイミングで描くとうまく表示されない可能性があります。

プログラムを書く場所は、
・フォームエディタを起動
・右上のフォームをクリック
・右下のFormOtherEventをクリック
・右に表示された編集ボタンをクリック
して生成された、form1FormOtherEvent内にします。

文字絵画関数は DispNCか DrawStrを使います。
なぜ2種類あるのか謎ですが、気にしない事にします(ぉ)

POINT point; /*表示座標*/
COLOR fg_color; /*表示色*/
COLOR bg_color; /*背景色*/

/*表示場所指定(*4しているのは単位変換の為)
point.x=10 * 4;
point.y=10 * 4;

/*文字の色を指定(マニュアルに省略不可と書いてある)*/
fg_color.CValue=BLACK;
bg_color.CValue=WHITE;

/*DispNCを使う場合*/
DispNC(AplForm->FormWnHandle, &point, &fg_color, &bg_color, FBSET + QP48_CHR, "Lovely",6, 2 * 4, NULL);

/*DrawStrを使う場合*/
DrawStr(AplForm->FormWnHandle, &point, &fg_color, &bg_color, FBSET + QP48_CHR, "Lovely",2 * 4, NULL, DS_NORMAL);

分かってしまえば簡単ですが、この方法を調べるのに苦労しました。
日本語も問題なく表示できました。
但し、文字数指定の箇所は2倍の値を記述する必要があります。バイト数と覚えておいた方が良いでしょう。

○ビルド(コンパイル)方法

とりあえず動かしてみようと、メニューのビルドを開けると、モーダル表示になっていてビルドできません(泣)
このツールの欠陥として、全て保存しなければビルドできない点があります。
つまり、保存を選択しながら、コードを入力したテキストエディタを閉じ、フォームエディタも閉じてみて下さい。
そうすると、確実にビルドが選択できるようになるはずです。

無事にビルドが完了すると、プロジェクト作成時に指定したフォルダにファイルが出来ます。
私も最初分からなかったので書いておきますが、拡張子が .ZACのファイルだけをザウルスに入れて下さい。


TOPプログラマ専用Zaurus SZAB

Melonbooks DL