}bu kısmı yazmadan direk kelimeProLabel ı tanımlarsam bileşen ekrana gelmiyor. Ama bu kısmı yazdıktan sonra da ekran açıldığında mesaj kutusunda 'Bileşen bulunamadı' yazıyor ve kutuyu kapattıktan sonra istediğim şekilde bileşen geliyor. Sayfa yenilendiği zaman yine istediğim şekilde bileşen aynı yere geliyor. Ekrana gelen bu 'Bileşen bulunamadı' hatasını nasıl çözerim?Teşekkürler.------------------------------------------------------------------------------var
MyForm,baslaForm,oyunForm: TclForm;
arkaPlanImg: TCLImage;
baslaButon,nasiloynanirButon,fruitsButon,animalsButon,colorsButon,jobsButon,tahminEtProButton : TClProButton;
fruitsList,animalsList,colorsList,jobsList: TclStringList;
kelimeProLabel, kategoriProLabel,karistirilmisProLabel,tahminetProLabel: TClProLabel;
tahminProEdit: TclProEdit;
karisikKelime: String;
i: Integer;
yedeklabel : TClProLabel;
orijinalKelime: String;
canSayisi: Integer;
selectedList: TclStringList;
kelimeIndex: Integer;
function harfleriKaristir(List:TclStringList);
var
i,j, k, RandomIndex: Integer;
harfListesi, alfabe, randomHarfler: TclStringList;
TempChar: String;
{
alfabe = Clomosy.StringListNew;
alfabe.Add('a');
alfabe.Add('b');
alfabe.Add('c');
alfabe.Add('d');
alfabe.Add('e');
alfabe.Add('f');
alfabe.Add('g');
alfabe.Add('h');
alfabe.Add('i');
alfabe.Add('j');
alfabe.Add('k');
alfabe.Add('l');
alfabe.Add('m');
alfabe.Add('o');
alfabe.Add('p');
alfabe.Add('q');
alfabe.Add('r');
alfabe.Add('s');
alfabe.Add('t');
alfabe.Add('u');
alfabe.Add('v');
alfabe.Add('w');
alfabe.Add('x');
alfabe.Add('y');
alfabe.Add('z');
if (kelimeIndex < List.Count)
{
orijinalKelime = List[kelimeIndex];
harfListesi = Clomosy.StringListNew;
harfListesi.Capacity = Length(List[kelimeIndex]) + 3;
for j = 1 to Length(orijinalKelime)
{
harfListesi.Add(Copy(orijinalKelime, j, 1));
}
// Rasgele 3 harf ekleme
randomHarfler = Clomosy.StringListNew;
for j = 1 to 3
{
RandomIndex = Round(Random(alfabe.Count - 1));
randomHarfler.Add(alfabe[RandomIndex]);
}
for j = 0 to randomHarfler.Count - 1
{
harfListesi.Add(randomHarfler[j]);
}
// Karıştırma
for k = 0 to harfListesi.Count - 1
{
RandomIndex = Round(Random(harfListesi.Count - 1));
TempChar = harfListesi[k];
harfListesi[k] = harfListesi[RandomIndex];
harfListesi[RandomIndex] = TempChar;
}
// Karışık kelimeyi oluştur
karisikKelime = '';
for k = 0 to harfListesi.Count - 1
{
karisikKelime = karisikKelime + harfListesi[k];
}
yedeklabel = oyunForm.clFindComponent('kelimeProLabel');
if (yedeklabel <> nil)
{
yedeklabel.Text = karisikKelime;
}
else
{
kelimeProLabel = oyunForm.AddNewProLabel(oyunForm, 'kelimeProLabel', karisikKelime);
clComponent.SetupComponent(kelimeProLabel, '{ "Align": "Center", "MarginBottom": 350, "Width": 340, "Height": 60, "TextSize": 25, "TextHorizontalAlign": "Center", "TextVerticalAlign": "Center", "TextBold": "Yes", "BackgroundColor": "#fefbec", "RoundHeight": 8, "RoundWidth": 8, "BorderColor": "#94ae89", "BorderWidth": 2 }');
}
}
}
void KategoriSecimi;
{
oyunForm = TCLForm.Create(Self);
oyunForm.SetFormBGImage(' https://i.imgur.com/0ozkr4m.png" rel="nofollow - https://i.imgur.com/0ozkr4m.png ');
karistirilmisProLabel = oyunForm.AddNewProLabel(oyunForm,'karistirilmisProLabel','KELİMENİN KARIŞTIRILMIŞ
HALİ:');
clComponent.SetupComponent(karistirilmisProLabel,'{
"Align":"Center",
"MarginBottom" : 550,
"Width":400,
"Height" :300,
"TextSize" : 25,
"TextVerticalAlign": "Center",
"TextHorizontalAlign" :"Center",
"TextBold": "Yes"
}')
tahminetProLabel = oyunForm.AddNewProLabel(oyunForm,'tahminetProLabel','TAHMİN ET:');
clComponent.SetupComponent(tahminetProLabel,'{
"Align":"Center",
"MarginBottom" : 120,
"Width":400,
"Height" :300,
"TextSize" : 25,
"TextVerticalAlign": "Center",
"TextHorizontalAlign" :"Center",
"TextBold": "Yes"
}')
tahminProEdit = oyunForm.AddNewProEdit(oyunForm, 'tahminProEdit', 'Tahminini Gir...');
clComponent.SetupComponent(tahminProEdit,'{
"Align" : "Center",
"MarginTop":80,
"Width":340,
"Height":60,
"TextSize" :25,
"TextHorizontalAlign " : "Center",
"TextVerticalAlign" : "Center",
"TextBold":"Yes",
"BackgroundColor":"#fefbec",
"RoundHeight":8,
"RoundWidth":8,
"BorderColor":"#94ae89",
"BorderWidth":2
}')
tahminProEdit.clTypeOfField = taString; //Sadece metin girişi
tahminEtProButton = oyunForm.AddNewProButton(oyunForm, 'tahminEtProButton', 'KONTROL ET');
clComponent.SetupComponent(tahminEtProButton,
'{
"Align" : "Center",
"TextSize":15,
"MarginTop" : 320,
"MarginLeft":200,
"Width" : 200,
"Height" : 50,
"RoundHeight" : 8,
"RoundWidth" : 8,
"BackgroundColor":"#fefbec",
"BorderColor":"#94ae89",
"BorderWidth" : 2
}');
oyunForm.AddNewEvent(tahminEtProButton,tbeOnClick,'tahminEtButonClick');
oyunForm.Run;
}
void fruitsButonClick;
{
fruitsList = Clomosy.StringListNew;
fruitsList.Capacity = 10;
fruitsList.Add('apple');
fruitsList.Add('banana');
fruitsList.Add('orange');
fruitsList.Add('mango');
fruitsList.Add('watermelon');
fruitsList.Add('cherry');
fruitsList.Add('lemon');
fruitsList.Add('strawberry');
fruitsList.Add('grape');
fruitsList.Add('pineapple');
kelimeIndex = 0;
selectedList = fruitsList;
KategoriSecimi;
harfleriKaristir(selectedList);
}
void animalsButonClick;
{
animalsList = Clomosy.StringListNew;
animalsList.Capacity = 10;
animalsList.Add('cat');
animalsList.Add('dog');
animalsList.Add('elephant');
animalsList.Add('tiger');
animalsList.Add('lion');
animalsList.Add('giraffe');
animalsList.Add('zebra');
animalsList.Add('monkey');
animalsList.Add('bear');
animalsList.Add('dolphin');
kelimeIndex = 0;
selectedList = animalsList;
KategoriSecimi;
harfleriKaristir(selectedList);
}
void colorsButonClick;
{
colorsList = Clomosy.StringListNew;
colorsList.Capacity = 10;
colorsList.Add('red');
colorsList.Add('blue');
colorsList.Add('green');
colorsList.Add('yellow');
colorsList.Add('black');
colorsList.Add('white');
colorsList.Add('pink');
colorsList.Add('orange');
colorsList.Add('purple');
colorsList.Add('brown');
kelimeIndex = 0;
selectedList = colorsList;
KategoriSecimi;
harfleriKaristir(selectedList);
}
void jobsButonClick;
{
jobsList = Clomosy.StringListNew;
jobsList.Capacity = 10;
jobsList.Add('doctor');
jobsList.Add('teacher');
jobsList.Add('engineer');
jobsList.Add('nurse');
jobsList.Add('lawyer');
jobsList.Add('architect');
jobsList.Add('chef');
jobsList.Add('artist');
jobsList.Add('police');
jobsList.Add('journalist');
kelimeIndex = 0;
selectedList = jobsList;
KategoriSecimi;
harfleriKaristir(selectedList);
}
void baslaButonClick;
{
canSayisi = 3;
baslaForm = TCLForm.Create(Self);
baslaForm.SetFormBGImage(' https://i.imgur.com/QdZNWrx.png" rel="nofollow - https://i.imgur.com/QdZNWrx.png ');
kategoriProLabel = baslaForm.AddNewProLabel(baslaForm,'kategoriProLabel','HADİ BİR KATEGORİ SEÇ
VE
TAHMİN ETMEYE BAŞLA!');
clComponent.SetupComponent(kategoriProLabel,'{
"Align":"Center",
"MarginBottom" : 520,
"Width":400,
"Height" :300,
"TextSize" : 25,
"TextVerticalAlign": "Center",
"TextHorizontalAlign" :"Center",
"TextBold": "Yes"
}')
fruitsButon = baslaForm.AddNewProButton(baslaForm, 'fruitsButon', 'Fruits');
clComponent.SetupComponent(fruitsButon,
'{
"Align" : "Center",
"TextSize":20,
"MarginBottom" : 150,
"MarginRight":200,
"Width" : 170,
"Height" : 170,
"RoundHeight" : 8,
"RoundWidth" : 8,
"Bordercolor" : "#8eaaad",
"BackgroundColor":"#fefbec",
"BorderWidth" : 2
}');
baslaForm.AddNewEvent(fruitsButon,tbeOnClick,'fruitsButonClick');
//-------------------------------------------------------------------------------
animalsButon = baslaForm.AddNewProButton(baslaForm, 'animalsButon', 'Animals');
clComponent.SetupComponent(animalsButon,
'{
"Align" : "Center",
"TextSize":20,
"MarginBottom" : 150,
"MarginLeft":200,
"Width" : 170,
"Height" : 170,
"RoundHeight" : 8,
"RoundWidth" : 8,
"Bordercolor" : "#8eaaad",
"BackgroundColor":"#fefbec",
"BorderWidth" : 2
}');
baslaForm.AddNewEvent(animalsButon,tbeOnClick,'animalsButonClick');
//--------------------------------------------------------------------------
colorsButon = baslaForm.AddNewProButton(baslaForm, 'colorsButon', 'Colors');
clComponent.SetupComponent(colorsButon,
'{
"Align" : "Center",
"TextSize":20,
"MarginTop" : 250,
"MarginRight":200,
"Width" : 170,
"Height" : 170,
"RoundHeight" : 8,
"RoundWidth" : 8,
"Bordercolor" : "#8eaaad",
"BackgroundColor":"#fefbec",
"BorderWidth" : 2
}');
baslaForm.AddNewEvent(colorsButon,tbeOnClick,'colorsButonClick');
//--------------------------------------------------------------------
jobsButon = baslaForm.AddNewProButton(baslaForm, 'jobsButon', 'Jobs');
clComponent.SetupComponent(jobsButon,
'{
"Align" : "Center",
"TextSize":20,
"MarginTop" : 250,
"MarginLeft":200,
"Width" : 170,
"Height" : 170,
"RoundHeight" : 8,
"RoundWidth" : 8,
"Bordercolor" : "#8eaaad",
"BackgroundColor":"#fefbec",
"BorderWidth" : 2
}');
baslaForm.AddNewEvent(jobsButon,tbeOnClick,'jobsButonClick');
//-------------------------------------------------------------
baslaForm.Run;
}
void kalanHak;
{
if (canSayisi > 0)
{
Dec(canSayisi);
if (canSayisi == 2)
{
ShowMessage('Yanlış tahmin! Kalan can sayın: '+ IntToStr(canSayisi));
}
else if (canSayisi == 1)
{
ShowMessage('Yanlış tahmin! Kalan can sayın: '+ IntToStr(canSayisi));
}
else if (canSayisi == 0)
{
ShowMessage('Oyun bitti! Geriye hiç canın kalmadı :(
Doğru kelime: '+ orijinalKelime+'
Hadi Tekrar Oyna!');
oyunForm.BtnGoBackClick(self);
}
}
}
void tahminEtButonClick;
var
tahminEdilenKelime: String;
karsilastir: Integer;
{
tahminEdilenKelime= LowerCase(tahminProEdit.Text);
karsilastir= AnsiCompareText(tahminEdilenKelime,LowerCase(orijinalKelime));
if (karsilastir == 0)
{
ShowMessage('Doğru bildin! Hadi diğer kelimeye geç!');
kelimeIndex = kelimeIndex + 1; // Bir sonraki kelimeye geç
if (kelimeIndex < selectedList.Count)
{
harfleriKaristir(selectedList); // Yeni kelimeyi karıştır ve göster
}
else
{
ShowMessage('Tebrikler! Tüm kelimeleri doğru tahmin ettiniz!
Hadi bir kategori daha seç ve kelimeleri bulmaya devam et!');
oyunForm.BtnGoBackClick(Self); // Ana menüye dön
}
}
else
{
kalanHak;
}
tahminProEdit.Text = '';
}
void nasiloynanirButonClick;
{
ShowMessage('Guess What oyununa hoş geldiniz! Bu oyunda, karışık halde verilen harflerden anlamlı bir kelime oluşturmanız beklenmektedir.
Oyunun amacı, verilen harfleri kullanarak doğru kelimeyi bulmaktır. Seçilen kategori ile ilgili gelen kelimenin harfleri karışık gelir. Ayrıca kelimeye ait olmayan harfler de bu karışık harflerin arasında yer alır.
Haydi Başla butonuna tıkla, ardından bir kategori seç ve eğlenmeye başla!');
}
{
MyForm = TCLForm.Create(Self);
MyForm.SetFormBGImage(' https://i.imgur.com/rLwQoPD.png" rel="nofollow - https://i.imgur.com/rLwQoPD.png ');
baslaButon = MyForm.AddNewProButton(MyForm, 'baslaButon', 'BAŞLA');
clComponent.SetupComponent(baslaButon,
'{
"Align" : "Center",
"TextSize":25,
"MarginBottom" : 135,
"Width" : 250,
"Height" : 70,
"RoundHeight" : 5,
"RoundWidth" : 5,
"Bordercolor" : "#8eaaad",
"BorderWidth" : 2
}');
MyForm.AddNewEvent(baslaButon,tbeOnClick,'baslaButonClick');
nasiloynanirButon = MyForm.AddNewProButton(MyForm, 'nasiloynanirButon', 'NASIL OYNANIR?');
clComponent.SetupComponent(nasiloynanirButon,
'{
"Align" : "Center",
"TextSize":25,
"MarginTop" : 40,
"Width" : 250,
"Height" : 70,
"RoundHeight" : 5,
"RoundWidth" : 5,
"Bordercolor" : "#8eaaad",
"BorderWidth" : 2
}');
MyForm.AddNewEvent(nasiloynanirButon,tbeOnClick,'nasiloynanirButonClick');
MyForm.Run;
}