9ゲームの制作 VB6
 (2) タイルの配置 前へ 目次へ 次へ 

 2. タイルの配置と色設定

 タイル1の色をグリーン系統の色(&H80C040)に設定し、少しずつ明るくなるようにグラデーションにする。色は、RGB(赤緑青)の順に1バイトずつで設定する。色が&H80C040のとき、赤が&H80、緑が&HC0、青が&H40であり、これをつなげて色の値を表す。

 グラデーションにするとき、色の値を1ずつ加算しても違いがハッキリでないので4ずつ程度加算することにする。青の部分を加算するときは4ずつ加算すればよいが、緑の部分を加算するときは、&400ずつ加算することになる。同じように赤の部分を加算するときは、&H40000ずつ加算することになる。
 ここでは、緑の部分を加算することにする。

・プログラムリスト

Private Sub Form_Load()
    Dim n As Integer

    cmdTile(1).BackColor = &H80C040    '1つ目のオブジェクトの色を設定
    For n = 2 To 9
        Load cmdTile(n)        '新規にオブジェクトを追加
        With cmdTile(n)        '追加したオブジェクトのプロパティ設定
            .Top = cmdTile(1).Top + cmdTile(1).Height * Int((n - 1) / 3)
            .Left = cmdTile(1).Left + cmdTile(1).Width * ((n - 1) Mod 3)
            .Caption = Str(n)
            .BackColor = cmdTile(1).BackColor + n * &H400
            .Visible = True
        End With
    Next n
    cmdTile(9).Visible = False        '9番目は表示しない
End Sub

 プログラムでタイルのボタンのプロパティを5つ設定している。これまでであれば次のように書いたが、ここでは上のプログラムリストのようにWith命令で設定している。

cmdTile(n).Top = cmdTile(1).Top + …
cmdTile(n).Left = cmdTile(1).Left + …
cmdTile(n).Caption = Str(n)
cmdTile(n).BackColor = cmdTile(1).BackColor …
cmdTile(n).Visible = True

 プログラムを実行すると、8枚のタイルが表示される。

 9番目のタイルは移動先を表す目印として使用する。


 (2) タイルの配置 前へ 目次へ 次へ 
Copyright © 2001,2002 Hiroshi Masuda 

 

 

inserted by FC2 system