그래서 무작위로 색칠 된 그림 상자가 필요한 게임을 만들려고합니다. 랜덤 컬러 생성기를 만들려고 시도했지만 설명 할 수없는 문제가 발생했습니다.루프 내에서 두 번째 인터럽트 이후 동일한 번호를 부여하는 RNG
이 코드 (Form1_Load 이벤트의 내부에서)를 실행하면 :
for(int i=0; i<6, i++)
{
DateTime moment = DateTime::Now;
Random^RNG=gcnew Random(moment.Millisecond);
color[i]=RNG->Next(16);
if(color[i]<=9)
{
colorStr[i]=color[i].ToString();
}
else if(color[i]==10)
{
colorStr[i]="A";
}
else if(color[i]==11)
{
colorStr[i]="B";
}
else if(color[i]==12)
{
colorStr[i]="C";
}
else if(color[i]==13)
{
colorStr[i]="D";
}
else if(color[i]==14)
{
colorStr[i]="E";
}
else if(color[i]==15)
{
colorStr[i]="F";
}
FullColor+=colorStr[i]; //FullColor was initialized with a value of "#";
}
this->textBox1->Text=FullColor;
this->Player->BackColor = System::Drawing::ColorTranslator::FromHTML(FullColor);
텍스트 상자 표시를 모두 같은 번호 (예 : # 000000) 중 하나, 또는 첫 번째 숫자는 고유하지만 다른 다섯이 될 것입니다 서로 동일합니다 (예 : # A22222).
귀하의 거대한 경우 - 다른 체인은 16 진수 문자열로 숫자에서 간단한 변환을 교체 할 수 있습니다. – chris