一番初めに紹介しましたさめがめは画像を使用しています。これまで作成したプログラムでは、整数を画像代わりに使用してきましたが、この数字を画像に置き換えることは簡単に出来ます。OnDrawCell に次のようにコードを書いてください。
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); var Bmp: TBitmap; Num, Idx: Integer; begin Bmp := nil; Idx := セルのインデックス Num := FCells[Idx].Num; case Num of 0: Bmp := 適当な画像 1: Bmp := 適当な画像 2: Bmp := 適当な画像 end; StringGrid1.Canvas.Draw(Rect.Left, Rect.Top, Bmp); end;
画像の種類を増やしたい場合は、TCell の Num プロパティの値を適宜変更して下さい。再描画するには StringGrid1.Repaint を実行します。
また、セル全体のサイズを変更するには、MAX_COL_COUNT と MAX_ROW_COUNT の値を変更し、それに応じて TStringGrid の RowCount, ColCount をそれぞれ変更します。
画像を用いて作成したさめがめのソースも以下のダウンロードに含まれています。
その2 から その4 までで作成した全てのプロジェクトのソースと、その1 で紹介したさめがめのプロジェクトソースです。
samesrc.lzh (13.0 KB)
画像のEXE埋め込みは、Halbow さんの EXE に埋め込む - リソースの使い方 を参照しました。Halbow さんに感謝いたします。
up
Last update: 2004/3/8