07)オブジェクトの動的生成:問題3

問題2

2次元のカラーチャートを作成せよ。

(配列の使用方法をチェック)

 

解答案:
(設定)
Form1(ClientWidth:400,ClientHeight:400)

 

(プログラム)

TForm1 *Form1;
TShape *s[20][20];
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner)
{
 for(int i=0; i<13; i++){
  for(int j=0; j<13; j++){
   s[i][j]=new TShape(this);
   s[i][j]->Parent=this;
   s[i][j]->Width=20;
   s[i][j]->Height=20;
   s[i][j]->Top=40+25*i;
   s[i][j]->Left=40+25*j;
  }
 }
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormClick(TObject *Sender)
{
 for(int i=0; i<13; i++){
  for(int j=0; j<13; j++){
   int red=255;
   int green=255/13*(i+1);
   int blue=255/13*(j+1);
   s[i][j]->Brush->Color=TColor RGB(red, green, blue);
  }
 }
}
 

疑問点:

特になかったです。