Kod yazdım fakat çalışmıyor hatayı da tam çözemedim. Yardımcı olabilir misiniz?
Var
AnaForm:TclForm;
btn1 : TClProButton;
Zaman : TCLTimer;
sayac:Integer;
RndmTimer: TClTimer;
colorArray : array of String;
oyunzaman:TCLTimer;
sayac1:Integer;
lblTimer: TCLLabel;
testImg: TCLImage; //random yerlerde belirli zamanda görsel çıkartıyor. //EKSURE İÇİN KULLANDIM.
void randomColor;
var
randmDeger: Integer;
{
colorArray = ['#26cf3a','#ff780a','#9a7de8','#813b3b','#a664c4','#6492c4','#81c464'];
randmDeger = clMath.GenerateRandom(0,6);
AnaForm.SetFormColor(colorArray[randmDeger],'',clGNone);
}
/*
void randomPosition; //Random Position değiştirmesi için oluşturuldu.
{
btn1.Position.X = Abs((Random() * AnaForm.clWidth) - btn1.Width);
btn1.Position.Y = Abs((Random() * AnaForm.clHeight) - btn1.Height);
}
*/
void eksure //Ekranın ortasındaki sayı 25 veya büyük olunca çıkması için yapıldı.
{
if(IntToStr(btn1.Text) > 25)
{
testImg.visible=False;
sayac1 = sayac1+5;
}
}
void zamanlayici;
{
if (sayac >= 100)
{
RndmTimer.Enabled = True;
}
btn1.Text = IntToStr(sayac);
sayac = sayac + 1;
oyunzaman.Enabled=True;
btn1.Text = IntToStr(sayac);
if(sayac == 25)
{
AnaForm.SetFormColor('#23c7c5','',clGNone);
sayac1 = sayac1 + 3;
btn1.Position.X = Abs((Random() * AnaForm.clWidth) - btn1.Width);
btn1.Position.Y = Abs((Random() * AnaForm.clHeight) - btn1.Height);
testImg.Position.X = Abs((Random() * AnaForm.clWidth) - testImg.Width);
testImg.Position.Y = Abs((Random() * AnaForm.clHeight) - testImg.Height);
testImg.visible=True;
}
if(sayac == 72)
{
AnaForm.SetFormColor('#e01f1f','',clGNone);
sayac1 = sayac1 + 5;
btn1.Position.X = Abs((Random() * AnaForm.clWidth) - btn1.Width);
btn1.Position.Y = Abs((Random() * AnaForm.clHeight) - btn1.Height);
testImg.Position.X = Abs((Random() * AnaForm.clWidth) - testImg.Width);
testImg.Position.Y = Abs((Random() * AnaForm.clHeight) - testImg.Height);
testImg.visible=True;
}
if(sayac == 100)
{
AnaForm.SetFormColor('#cfeb00','#db7edd',clGHorizontal);
sayac1 = sayac1 + 7;
btn1.Position.X = Abs((Random() * AnaForm.clWidth) - btn1.Width);
btn1.Position.Y = Abs((Random() * AnaForm.clHeight) - btn1.Height);
testImg.Position.X = Abs((Random() * AnaForm.clWidth) - testImg.Width);
testImg.Position.Y = Abs((Random() * AnaForm.clHeight) - testImg.Height);
testImg.visible=True;
}
//1.
if (sayac >= 127)
{
AnaForm.SetFormColor('#ffae00','',clGNone);
randomPosition();
RndmTimer.Enabled = False;
}
btn1.Text = IntToStr(sayac);
//2.
if (sayac == 134)
{
RndmTimer.Enabled = True;
randomPosition();
}
btn1.Text = IntToStr(sayac);
//3.
/* // random position için fonksiyon
if(sayac >= 137 && sayac <= 155)
{
randomPosition();
}
*/
//4.
if (sayac >= 156)
{
AnaForm.SetFormColor('#16cce3','',clGNone);
RndmTimer.Enabled = False;
}
btn1.Text = IntToStr(sayac);
}
Burada bulunan yorum satırları içerisine aldığım (/* */) yerlerde void randomPosition; diye parametre atadım ve kod bloğunda ise if(sayac >= 137 && sayac <= 155) bunu yazdım benim ortadaki sayacım sürekli 155'ten küçük olduğu içinde random olarak yer değiştiriyor, fakat ben sadece 137 sayısıyla 155 sayıları arasında random olarak yer değiştirmesini istiyorum kopyala yapıştır yaparak yer değiştirebilirdim fakat daha kolay olması ve yer kaplamaması adına void randomPosition; parametresini oluşturdum. Sizce nasıl yapabilirim?