第6回 オブジェクト生成/解放を覚えてゲームを作る
フリーの開発環境「Turbo Delphi」を利用して,Windowsプログラミングの基本をお届けしている本連載,今回で最終回です。第6回は,ゲーム・プログラムを作成しながら(1)オブジェクトの生成,(2)動的配列,(3)コンポーネントを並べるためのコンテナ・コンポーネント――の三つをテーマに,お届けしていきます。復習も盛りだくさんで入っているので,以前の記事も読み返しながら挑戦してみてください。はりきっていきましょう! イメージを生成してゲーム・プログラムを作ってみる今回はサンプル・プログラム「兎をつかまえろ!」に取り組みましょう。「兎をつかまえろ!」プログラムは,フォームの中央に配置したTImageコンポーネントをクリックして,「兎」(うさぎ)と表示される場所を探すゲームです。以下のような機能を備えます。
ゲームで使う図形自体はサイズ変更に対応していません。スタートボタンをクリックしたあとで,フォームのサイズを小さくすると図形が欠けて見えることがあります。 また,ここで紹介する方法とは全く違うアプローチで,このプログラムを作ることもできます。けれど,勉強のために今回の方法を試してみてくださいね。プログラムを作る手順はもう覚えていただけましたよね。(1)画面を作る,(2)コードを書く――です。まずは画面を完成させましょう。 「兎をつかまえろ!」プログラムのメインフォームを作るさっそくサンプル・プログラムの作成に取りかかりましょう。まずTurbo Delphiを起動します。デスクトップにTurbo Delphiのアイコンがあれば,それをダブルクリックします。なければWindowsのスタートメニューから「すべてのプログラム」-「Borland Developer Studio 2006」-「Turbo Delphi」の順に選択します。 Turbo Delphiの画面が表示できたら,画面を作りましょう。起動してすぐの状態では画面中央に「ホームページ」が表示されています。画面の右下にある「ツールパレット」のカテゴリから「Delphiプロジェクト」を探して,「+」ボタンで展開しましょう。するとプログラムの種類を表示します。表示した一覧から「VCLフォームアプリケーション」をダブルクリックします。 フォームは二つの部分に分けます。フォームの右側には「TPanel」コンポーネントを一つ置き,その上に「TButton」コンポーネント四つを配置します。フォームの左側には,ゲームを表示する「TGridPanel」コンポーネントを一つ。これらのコンポーネントは画面右下「ツールパレット」から選びます。TButtonとTPanelは「Standard」カテゴリ,TGridPanelは「Additional」カテゴリに入っているので探してください。
簡単に見つからない場合は,「ツールパレット」と書かれた部分をクリックして,キーボードで始めの2文字程度を続けて入力してください。その二文字ではじまるコンポーネントだけが表示されます。解除するには,ツールパレット上部にある「ろうと」のようなアイコンのついたボタンをクリックします。 最初に土台となるTPanelコンポーネントを配置します。ツールパレットから「TPanel」選択して,フォームの右側に配置します。次にフォームの左側にTGridPanelコンポーネントを配置します。配置すると,コンポーネントの種類名に連番が付いた名前になります。説明の中では「Panel1」「Button1」など1から順に呼びますが,実際の作業では「Panel2」や,「Button3」となることもありますので,読み換えて作業を進めてください。 これから載せていくコンポーネントを置きやすくするために,「Align」プロパティを先に設定しておきます(表1)。Panel1を選択して,「レイアウト」か「表示」カテゴリにある「Align」を探します。右にある設定欄で「alRight」を選択します。これでPanel1がフォームの右側にピタッとくっつきます。次に,GridPanel1を選択して「Align」プロパティで「alClient」を選択します。GridPanel1が,フォームの残りの部分いっぱいに広がります。Panel1の「Caption」プロパティも削除しておきましょう。Panel1を選択して「表示」カテゴリなどにある「Caption」プロパティを選択して,中に記述されている文字を削除します。 表1●プロパティの設定
このままでは小さくて操作しづらいので,フォームやコンポーネントを広げます。パネルはコンポーネントを縦一列に配置するのでコンポーネントが置ける幅にしてください。サイズが調整できたら,Panel1の上にほかのコンポーネントを配置します。ツールパレットから「TButton」を選択して,Panel1の上から縦に四つ配置していきましょう(図1)。
メインフォームのプロパティ設定コンポーネントが配置できたら,プロパティを設定します。表1を参照して設定します。コンポーネントを選択しづらい場合は,画面左上の構造ペインからコンポーネント名をクリックすると便利です。 表1●プロパティの設定
設定できたら,Captionに設定した文字が見えるように配置やサイズを整えます。(図2)
次にgpnlHoleコンポーネントにグリッドを追加します。設定は「その他」カテゴリの「ColumnCollection」プロパティで「…」(ダイアログボタン)をクリックします。「ColumnCollectionの編集」ダイアログボックスでは列の設定ができます。ツールバーの「新規追加(Ins)」ボタンをクリックして列を追加します(図3)。
追加した「列2」を選択して,プロパティを設定します。「その他」カテゴリの「Value」プロパティに「40」を入力します。そうすると値が「28.5714...」となります。「40」にならなくてもいいので,そのまま「ColumnCollectionの編集」ダイアログボックスを閉じます。同様にして列も追加します。gpnlHoleコンポーネントが選択されていることを確認して,「その他」カテゴリの「RowCollection」プロパティで「…」をクリックします。「RowCollectionの編集」ダイアログボックスでは行の設定ができます。ツールバーの「新規追加」ボタンをクリックして行を追加します。追加した「行2」を選択して,プロパティを設定します。「その他」カテゴリの「Value」プロパティに「40」を入力します。そうすると値が「28.5714...」となります。そのまま「RowCollectionの編集」ダイアログボックスを閉じます(図4)。
プロパティの設定はできましたか? では,プロジェクトのオプションで,アプリケーション名を設定します。「プロジェクト」メニューの「オプション」をクリックします。表示されるプロジェクトオプション・ダイアログボックスの左欄で「アプリケーション」をクリックします。そうすると右欄に「アプリケーションの設定」という枠が表示されます。「タイトル」欄に「兎をつかまえろ!」を入力して,画面下部にある「OK」ボタンをクリックします(図5)。
設定できたら保存しておきましょう。保存するにはツールバーの「すべて保存」ボタンをクリックします。ユニットは「FormRabbit」,プロジェクトは「Rabbit」で保存します。
>>サブフォームを追加する
連載新着連載目次へ >>
|