随机数怎么不那么随机啊??
TColor __fastcall TForm1::SwitchColor(void)
{int i;
randomize();
i=random(12);
switch (i)
{case 0:
return clNone;
break;
case 1:
return clBlue;
break;
case 2:
return clCream;
break;
case 3:
return clMaroon;
break;
case 4:
return clGray;
break;
case 5:
return clNavy;
break;
case 6:
return clPurple;
break;
case 7:
return clBlue;
break;
case 8:
return clSilver;
break;
case 9:
return clRed;
break;
case 10:
return clYellow;
break;
case 11:
return clWhite;
break;
default: return clTeal;
}
}
void __fastcall TForm1::brush(TColor &color,int ALeft, int ATop, int ARight,
int ABottom)
{
TCanvas* c=new TCanvas();
c->Handle=GetDC(0);
try{
c->Brush->Color=color;
c->FillRect(Rect(ALeft,ATop,ARight,ABottom));
}
__finally
{
delete c;
}
}
画图调用 brush(SwitchColor(),0,0,ScreenWidth,200);
brush(SwitchColor(),0,300,ScreenWidth,400);
两次的颜色总是一样???为什么会出现这种情况??这个函数执行使在Timer1Timer事件产生的。