Clomosy | Forum Ana Sayfa
Forum Anasayfa Forum Anasayfa > Genel Programlama > Genel İşlemler
  Aktif Konular Aktif Konular RSS - KOD DÜZELTME
  SSS SSS  Forumu Ara   Etkinlikler   Kayıt Ol Kayıt Ol  Giriş Giriş

Clomosy Resmi Forum Sitesidir. Amacımız kullanıcılarımıza, iş ortaklarımıza, danışmanlara, yazılımcılara programlarımız hakkında destek ve bilgi vermektir.

KOD DÜZELTME

 Yanıt Yaz Yanıt Yaz
Yazar
Mesaj
  Konu Arama Konu Arama  Topic Seçenekleri Topic Seçenekleri
Nuran Özdemir Açılır Kutu İzle
Yeni Üye
Yeni Üye


Kayıt Tarihi: 14 Mayıs 2026
Durum: Aktif Değil
Puanlar: 8
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı Nuran Özdemir Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Konu: KOD DÜZELTME
    Gönderim Zamanı: 15 Saat 55 Dakika Önce Saat 18:58
Merhaba, aşağıda verilmiş olan periyodik tablo sanal laboratuvar uygulaması arka planına renklendirme ve metal,ametal,yarımetal,soygaz elementlerinin özelliklerini de eklemek istiyorum.Ancak denemelerim sonuç vermedi.Yardımcı olabilir misiniz?

MyForm: TclForm;
  TitleLabel, InfoLabel, ScoreLabel: TclLabel;
  LayoutTop, LayoutInfo, LayoutTable, LayoutButtons, LayoutBottomBar: TclLayout;
  LayoutRow1, LayoutRow2, LayoutRow3: TclLayout;
  LayoutAns1, LayoutAns2: TclLayout;
  
  BtnMetal, BtnAmetal, BtnYarimetal, BtnSoygaz, BtnReset: TclButton;
  SelectedElement: String;
  SelectedBtn: TclButton;
  CorrectCount: Integer;
  
  Btn1, Btn2, Btn3, Btn4, Btn5, Btn6, Btn7, Btn8, Btn9, Btn10: TclButton;
  Btn11, Btn12, Btn13, Btn14, Btn15, Btn16, Btn17, Btn18: TclButton;

void ElementSelect;
var
  ClickedBtn: TclButton;
{
  ClickedBtn = TclButton(MyForm.clSender);
  SelectedElement = ClickedBtn.Caption; 
  SelectedBtn = ClickedBtn; 
  
  InfoLabel.Text = 'SECILEN: ' + SelectedElement + ' -> Grubunu asagidan seciniz.';
}

void CheckClassification;
var
  ClickedClassBtn: TclButton;
  UserChoice, CorrectClass, SearchStr: String;
{
  if (SelectedElement == '')
  {
    InfoLabel.Text = 'UYARI: Lutfen once yukaridan bir element seciniz!';
  }
  else
  {
    ClickedClassBtn = TclButton(MyForm.clSender);
    UserChoice = ClickedClassBtn.Caption;
    CorrectClass = '';
    
    SearchStr = ',' + SelectedElement + ',';
    
    if (Pos(SearchStr, ',H,C,N,O,F,P,S,Cl,') > 0) 
    {
      CorrectClass = 'Ametal';
    }
    else if (Pos(SearchStr, ',He,Ne,Ar,') > 0) 
    {
      CorrectClass = 'Soy Gaz';
    }
    else if (Pos(SearchStr, ',Li,Be,Na,Mg,Al,') > 0) 
    {
      CorrectClass = 'Metal';
    }
    else if (Pos(SearchStr, ',B,Si,') > 0) 
    {
      CorrectClass = 'Yarimetal';
    }
    
    if (UserChoice == CorrectClass)
    {
      CorrectCount = CorrectCount + 1;
      InfoLabel.Text = 'DOGRU! ' + SelectedElement + ' elementi ' + CorrectClass + ' grubundadir.';
      SelectedBtn.Enabled = False; 
      SelectedElement = ''; 
      ScoreLabel.Text = 'Skor: ' + IntToStr(CorrectCount) + ' / 18';
      
      if (CorrectCount == 18)
      {
        InfoLabel.Text = 'TEBRIKLER! Tum elementleri basariyla tamamladiniz!';
      }
    }
    else
    {
      InfoLabel.Text = 'YANLIS! ' + SelectedElement + ' bir ' + UserChoice + ' degildir. Tekrar dene!';
    }
  }
}

void ResetGame;
{
  Btn1.Enabled = True; Btn2.Enabled = True; Btn3.Enabled = True; Btn4.Enabled = True;
  Btn5.Enabled = True; Btn6.Enabled = True; Btn7.Enabled = True; Btn8.Enabled = True;
  Btn9.Enabled = True; Btn10.Enabled = True; Btn11.Enabled = True; Btn12.Enabled = True;
  Btn13.Enabled = True; Btn14.Enabled = True; Btn15.Enabled = True; Btn16.Enabled = True;
  Btn17.Enabled = True; Btn18.Enabled = True;
  
  SelectedElement = '';
  CorrectCount = 0;
  InfoLabel.Text = 'Laboratuvar sifirlandi. Bir element secerek baslayin.';
  ScoreLabel.Text = 'Skor: 0 / 18';
}

{
  MyForm = TclForm.Create(Self);
  SelectedElement = '';
  CorrectCount = 0;

  // --- 1. UST BASLIK ALANI ---
  LayoutTop = MyForm.AddNewLayout(MyForm, 'LayoutTop');
  LayoutTop.Align = alTop;
  LayoutTop.Height = 50;

  TitleLabel = MyForm.AddNewLabel(LayoutTop, 'TitleLabel', '8. Sinif Ilk 18 Element Laboratuvari');
  TitleLabel.Align = alClient;
  TitleLabel.Margins.Top = 10;
  TitleLabel.Margins.Left = 10;

  // --- 2. BILGI VE SKOR PANELI ---
  LayoutInfo = MyForm.AddNewLayout(MyForm, 'LayoutInfo');
  LayoutInfo.Align = alTop;
  LayoutInfo.Height = 40;
  LayoutInfo.Margins.Left = 10;
  LayoutInfo.Margins.Right = 10;

  ScoreLabel = MyForm.AddNewLabel(LayoutInfo, 'ScoreLabel', 'Skor: 0 / 18');
  ScoreLabel.Align = alRight;
  ScoreLabel.Width = 80;

  InfoLabel = MyForm.AddNewLabel(LayoutInfo, 'InfoLabel', 'Tablodan bir element seciniz.');
  InfoLabel.Align = alClient;

  // --- 3. MUTLAK UYUMLU PERIYODIK TABLO ALANI ---
  LayoutTable = MyForm.AddNewLayout(MyForm, 'LayoutTable');
  LayoutTable.Align = alClient;
  LayoutTable.Margins.Left = 10;
  LayoutTable.Margins.Right = 10;
  LayoutTable.Margins.Top = 15;

  // 1. Periyot (H solda, He sagda - Gercek duzen)
  LayoutRow1 = MyForm.AddNewLayout(LayoutTable, 'LayoutRow1');
  LayoutRow1.Align = alTop; LayoutRow1.Height = 42; LayoutRow1.Margins.Bottom = 6;
  
  Btn1 = MyForm.AddNewButton(LayoutRow1, 'Btn1', 'H');  Btn1.Align = alLeft; Btn1.Width = 38;
  Btn2 = MyForm.AddNewButton(LayoutRow1, 'Btn2', 'He'); Btn2.Align = alRight; Btn2.Width = 38;

  // 2. Periyot (8 Element eksiksiz yan yana)
  LayoutRow2 = MyForm.AddNewLayout(LayoutTable, 'LayoutRow2');
  LayoutRow2.Align = alTop; LayoutRow2.Height = 42; LayoutRow2.Margins.Bottom = 6;
  
  Btn3 = MyForm.AddNewButton(LayoutRow2, 'Btn3', 'Li'); Btn3.Align = alLeft; Btn3.Width = 38; Btn3.Margins.Right = 2;
  Btn4 = MyForm.AddNewButton(LayoutRow2, 'Btn4', 'Be'); Btn4.Align = alLeft; Btn4.Width = 38; Btn4.Margins.Right = 2;
  Btn5 = MyForm.AddNewButton(LayoutRow2, 'Btn5', 'B');  Btn5.Align = alLeft; Btn5.Width = 38; Btn5.Margins.Right = 2;
  Btn6 = MyForm.AddNewButton(LayoutRow2, 'Btn6', 'C');  Btn6.Align = alLeft; Btn6.Width = 38; Btn6.Margins.Right = 2;
  Btn7 = MyForm.AddNewButton(LayoutRow2, 'Btn7', 'N');  Btn7.Align = alLeft; Btn7.Width = 38; Btn7.Margins.Right = 2;
  Btn8 = MyForm.AddNewButton(LayoutRow2, 'Btn8', 'O');  Btn8.Align = alLeft; Btn8.Width = 38; Btn8.Margins.Right = 2;
  Btn9 = MyForm.AddNewButton(LayoutRow2, 'Btn9', 'F');  Btn9.Align = alLeft; Btn9.Width = 38; Btn9.Margins.Right = 2;
  Btn10 = MyForm.AddNewButton(LayoutRow2, 'Btn10', 'Ne'); Btn10.Align = alLeft; Btn10.Width = 38;

  // 3. Periyot (8 Element eksiksiz yan yana)
  LayoutRow3 = MyForm.AddNewLayout(LayoutTable, 'LayoutRow3');
  LayoutRow3.Align = alTop; LayoutRow3.Height = 42;
  
  Btn11 = MyForm.AddNewButton(LayoutRow3, 'Btn11', 'Na'); Btn11.Align = alLeft; Btn11.Width = 38; Btn11.Margins.Right = 2;
  Btn12 = MyForm.AddNewButton(LayoutRow3, 'Btn12', 'Mg'); Btn12.Align = alLeft; Btn12.Width = 38; Btn12.Margins.Right = 2;
  Btn13 = MyForm.AddNewButton(LayoutRow3, 'Btn13', 'Al'); Btn13.Align = alLeft; Btn13.Width = 38; Btn13.Margins.Right = 2;
  Btn14 = MyForm.AddNewButton(LayoutRow3, 'Btn14', 'Si'); Btn14.Align = alLeft; Btn14.Width = 38; Btn14.Margins.Right = 2;
  Btn15 = MyForm.AddNewButton(LayoutRow3, 'Btn15', 'P');  Btn15.Align = alLeft; Btn15.Width = 38; Btn15.Margins.Right = 2;
  Btn16 = MyForm.AddNewButton(LayoutRow3, 'Btn16', 'S');  Btn16.Align = alLeft; Btn16.Width = 38; Btn16.Margins.Right = 2;
  Btn17 = MyForm.AddNewButton(LayoutRow3, 'Btn17', 'Cl'); Btn17.Align = alLeft; Btn17.Width = 38; Btn17.Margins.Right = 2;
  Btn18 = MyForm.AddNewButton(LayoutRow3, 'Btn18', 'Ar'); Btn18.Align = alLeft; Btn18.Width = 38;

  // Element Butonlari Tiklama Olaylari
  MyForm.AddNewEvent(Btn1, tbeOnClick, 'ElementSelect'); MyForm.AddNewEvent(Btn2, tbeOnClick, 'ElementSelect');
  MyForm.AddNewEvent(Btn3, tbeOnClick, 'ElementSelect'); MyForm.AddNewEvent(Btn4, tbeOnClick, 'ElementSelect');
  MyForm.AddNewEvent(Btn5, tbeOnClick, 'ElementSelect'); MyForm.AddNewEvent(Btn6, tbeOnClick, 'ElementSelect');
  MyForm.AddNewEvent(Btn7, tbeOnClick, 'ElementSelect'); MyForm.AddNewEvent(Btn8, tbeOnClick, 'ElementSelect');
  MyForm.AddNewEvent(Btn9, tbeOnClick, 'ElementSelect'); MyForm.AddNewEvent(Btn10, tbeOnClick, 'ElementSelect');
  MyForm.AddNewEvent(Btn11, tbeOnClick, 'ElementSelect'); MyForm.AddNewEvent(Btn12, tbeOnClick, 'ElementSelect');
  MyForm.AddNewEvent(Btn13, tbeOnClick, 'ElementSelect'); MyForm.AddNewEvent(Btn14, tbeOnClick, 'ElementSelect');
  MyForm.AddNewEvent(Btn15, tbeOnClick, 'ElementSelect'); MyForm.AddNewEvent(Btn16, tbeOnClick, 'ElementSelect');
  MyForm.AddNewEvent(Btn17, tbeOnClick, 'ElementSelect'); MyForm.AddNewEvent(Btn18, tbeOnClick, 'ElementSelect');

  // --- 4. EN ALT ALAN: SIFIRLAMA BARBARI ---
  LayoutBottomBar = MyForm.AddNewLayout(MyForm, 'LayoutBottomBar');
  LayoutBottomBar.Align = alBottom;
  LayoutBottomBar.Height = 50;
  LayoutBottomBar.Margins.Left = 15;
  LayoutBottomBar.Margins.Right = 15;
  LayoutBottomBar.Margins.Bottom = 10;

  BtnReset = MyForm.AddNewButton(LayoutBottomBar, 'BtnReset', 'Laboratuvari Yeniden Baslat');
  BtnReset.Align = alClient;
  MyForm.AddNewEvent(BtnReset, tbeOnClick, 'ResetGame');

  // --- 5. SINIFLANDIRMA SECENEKLERI (2x2 Genis Butonlar) ---
  LayoutButtons = MyForm.AddNewLayout(MyForm, 'LayoutButtons');
  LayoutButtons.Align = alBottom; 
  LayoutButtons.Height = 110;
  LayoutButtons.Margins.Left = 15;
  LayoutButtons.Margins.Right = 15;
  LayoutButtons.Margins.Bottom = 5;

  // Cevap Grubu 1. Satir
  LayoutAns1 = MyForm.AddNewLayout(LayoutButtons, 'LayoutAns1');
  LayoutAns1.Align = alTop; LayoutAns1.Height = 50; LayoutAns1.Margins.Bottom = 6;

  BtnMetal = MyForm.AddNewButton(LayoutAns1, 'BtnMetal', 'Metal');
  BtnMetal.Align = alLeft; BtnMetal.Width = 140;

  BtnAmetal = MyForm.AddNewButton(LayoutAns1, 'BtnAmetal', 'Ametal');
  BtnAmetal.Align = alRight; BtnAmetal.Width = 140;

  // Cevap Grubu 2. Satir
  LayoutAns2 = MyForm.AddNewLayout(LayoutButtons, 'LayoutAns2');
  LayoutAns2.Align = alTop; LayoutAns2.Height = 50;

  BtnYarimetal = MyForm.AddNewButton(LayoutAns2, 'BtnYarimetal', 'Yarimetal');
  BtnYarimetal.Align = alLeft; BtnYarimetal.Width = 140;

  BtnSoygaz = MyForm.AddNewButton(LayoutAns2, 'BtnSoygaz', 'Soy Gaz');
  BtnSoygaz.Align = alRight; BtnSoygaz.Width = 140;

  // Sınıflandırma Butonları Event Atamaları
  MyForm.AddNewEvent(BtnMetal, tbeOnClick, 'CheckClassification');
  MyForm.AddNewEvent(BtnAmetal, tbeOnClick, 'CheckClassification');
  MyForm.AddNewEvent(BtnYarimetal, tbeOnClick, 'CheckClassification');
  MyForm.AddNewEvent(BtnSoygaz, tbeOnClick, 'CheckClassification');

  MyForm.Run;
}
https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon="{"version":"2024.11.0","token":"439455f3e46c40b98dbd42a2f1a954d8","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}" crossorigin="anonymous">
Yukarı Dön
kaanl0 Açılır Kutu İzle
Kıdemli Üye
Kıdemli Üye
Simge

Kayıt Tarihi: 16 Eylül 2025
Konum: konya
Durum: Aktif
Puanlar: 336
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı kaanl0 Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Gönderim Zamanı: 1 saat 30 Dakika Önce Saat 09:23
Merhaba denermisiniz 

var
  MyForm: TclForm;
  TitleLabel, InfoLabel, ScoreLabel: TclProLabel;
  LayoutTop, LayoutInfo, LayoutTable, LayoutButtons, LayoutBottomBar: TclLayout;
  LayoutRow1, LayoutRow2, LayoutRow3: TclLayout;
  LayoutAns1, LayoutAns2: TclLayout;
  
  BtnMetal, BtnAmetal, BtnYarimetal, BtnSoygaz, BtnReset: TclProButton;
  SelectedElement: String;
  SelectedBtn: TclButton;
  CorrectCount: Integer;
  
  Btn1, Btn2, Btn3, Btn4, Btn5, Btn6, Btn7, Btn8, Btn9, Btn10: TclButton;
  Btn11, Btn12, Btn13, Btn14, Btn15, Btn16, Btn17, Btn18: TclButton;

void ElementSelect;
var
  ClickedBtn: TclButton;
{
  ClickedBtn = TclButton(MyForm.clSender);
  SelectedElement = ClickedBtn.Caption; 
  SelectedBtn = ClickedBtn; 
  
  InfoLabel.Text = 'SECILEN: ' + SelectedElement + #13 + 'Grubunu asagidaki renkli butonlardan seciniz.';
}

void CheckClassification;
var
  ClickedClassBtn: TclProButton;
  UserChoice, CorrectClass, SearchStr, PropText: String;
{
  if (SelectedElement == '')
  {
    InfoLabel.Text = 'UYARI: Lutfen once yukaridaki tablodan bir element seciniz!';
  }
  else
  {
    ClickedClassBtn = TclProButton(MyForm.clSender);
    UserChoice = ClickedClassBtn.Caption;
    CorrectClass = '';
    PropText = '';
    
    SearchStr = ',' + SelectedElement + ',';
    
    // Sınıflandırma ve Özellik Atamaları
    if (Pos(SearchStr, ',H,C,N,O,F,P,S,Cl,') > 0) 
    {
      CorrectClass = 'Ametal';
      PropText = 'Ametal Ozellikleri: Mattirlar, kirilgandirlar. Isi ve elektrigi iyi iletmezler. Oda kosullarinda kati, sivi veya gaz halde bulunabilirler.';
    }
    else if (Pos(SearchStr, ',He,Ne,Ar,') > 0) 
    {
      CorrectClass = 'Soy Gaz';
      PropText = 'Soygaz Ozellikleri: Kararli yapidadirlar, kimyasal bag yapmazlar. Oda kosullarinda hepsi tek atomlu gaz halindedir.';
    }
    else if (Pos(SearchStr, ',Li,Be,Na,Mg,Al,') > 0) 
    {
      CorrectClass = 'Metal';
      PropText = 'Metal Ozellikleri: Parlaktirlar. Isi ve elektrigi iyi iletirler. Tel ve levha haline getirilebilirler. Civa haric hepsi katidir.';
    }
    else if (Pos(SearchStr, ',B,Si,') > 0) 
    {
      CorrectClass = 'Yarimetal';
      PropText = 'Yarimetal Ozellikleri: Fiziksel olarak metallere, kimyasal olarak ametallere benzerler. Parlak veya mat olabilirler.';
    }
    
    // Doğruluk Kontrolü
    if (UserChoice == CorrectClass)
    {
      CorrectCount = CorrectCount + 1;
      InfoLabel.Text = 'DOGRU! ' + SelectedElement + ' elementi bir ' + CorrectClass + 'tir.' + #13 + PropText;
      SelectedBtn.Enabled = False; 
      SelectedElement = ''; 
      ScoreLabel.Text = 'Skor: ' + IntToStr(CorrectCount) + ' / 18';
      
      if (CorrectCount == 18)
      {
        InfoLabel.Text = 'TEBRIKLER! Tum elementleri basariyla tamamladiniz ve ozelliklerini ogrendiniz!';
      }
    }
    else
    {
      InfoLabel.Text = 'YANLIS! ' + SelectedElement + ' bir ' + UserChoice + ' degildir. Ozelliklerini hatirla ve tekrar dene!';
    }
  }
}

void ResetGame;
{
  Btn1.Enabled = True; Btn2.Enabled = True; Btn3.Enabled = True; Btn4.Enabled = True;
  Btn5.Enabled = True; Btn6.Enabled = True; Btn7.Enabled = True; Btn8.Enabled = True;
  Btn9.Enabled = True; Btn10.Enabled = True; Btn11.Enabled = True; Btn12.Enabled = True;
  Btn13.Enabled = True; Btn14.Enabled = True; Btn15.Enabled = True; Btn16.Enabled = True;
  Btn17.Enabled = True; Btn18.Enabled = True;
  
  SelectedElement = '';
  CorrectCount = 0;
  InfoLabel.Text = 'Laboratuvar sifirlandi. Tablodan bir element secerek baslayin.';
  ScoreLabel.Text = 'Skor: 0 / 18';
}

{
  MyForm = TclForm.Create(Self);
  // Arka planı laboratuvar konseptine uygun koyu lacivert yapıyoruz
  MyForm.SetFormColor('#1E272E', '', clGNone);
  
  SelectedElement = '';
  CorrectCount = 0;

  // --- 1. UST BASLIK ALANI ---
  LayoutTop = MyForm.AddNewLayout(MyForm, 'LayoutTop');
  LayoutTop.Align = alTop;
  LayoutTop.Height = 50;

  TitleLabel = MyForm.AddNewProLabel(LayoutTop, 'TitleLabel', '8. Sinif Ilk 18 Element Laboratuvari');
  TitleLabel.Align = alClient;
  TitleLabel.clProSettings.FontColor = clAlphaColor.clWhite;
  TitleLabel.clProSettings.FontSize = 16;
  TitleLabel.clProSettings.FontHorzAlign = palCenter;
  TitleLabel.clProSettings.TextSettings.Font.Style = [fsBold];
  TitleLabel.SetclProSettings(TitleLabel.clProSettings);

  // --- 2. BILGI VE SKOR PANELI ---
  LayoutInfo = MyForm.AddNewLayout(MyForm, 'LayoutInfo');
  LayoutInfo.Align = alTop;
  // Özellik metinlerinin sığması için yükseklik artırıldı
  LayoutInfo.Height = 80;
  LayoutInfo.Margins.Left = 10;
  LayoutInfo.Margins.Right = 10;
  LayoutInfo.Margins.Bottom = 10;

  ScoreLabel = MyForm.AddNewProLabel(LayoutInfo, 'ScoreLabel', 'Skor: 0 / 18');
  ScoreLabel.Align = alRight;
  ScoreLabel.Width = 80;
  ScoreLabel.clProSettings.FontColor = clAlphaColor.clHexToColor('#F1C40F');
  ScoreLabel.clProSettings.TextSettings.Font.Style = [fsBold];
  ScoreLabel.SetclProSettings(ScoreLabel.clProSettings);

  InfoLabel = MyForm.AddNewProLabel(LayoutInfo, 'InfoLabel', 'Tablodan bir element seciniz.');
  InfoLabel.Align = alClient;
  InfoLabel.clProSettings.FontColor = clAlphaColor.clWhite;
  InfoLabel.clProSettings.TextSettings.WordWrap = True; // Metnin alt satıra geçmesini sağlar
  InfoLabel.SetclProSettings(InfoLabel.clProSettings);

  // --- 3. MUTLAK UYUMLU PERIYODIK TABLO ALANI ---
  LayoutTable = MyForm.AddNewLayout(MyForm, 'LayoutTable');
  LayoutTable.Align = alClient;
  LayoutTable.Margins.Left = 10;
  LayoutTable.Margins.Right = 10;

  // 1. Periyot
  LayoutRow1 = MyForm.AddNewLayout(LayoutTable, 'LayoutRow1');
  LayoutRow1.Align = alTop; LayoutRow1.Height = 42; LayoutRow1.Margins.Bottom = 6;
  
  Btn1 = MyForm.AddNewButton(LayoutRow1, 'Btn1', 'H');  Btn1.Align = alLeft; Btn1.Width = 38;
  Btn2 = MyForm.AddNewButton(LayoutRow1, 'Btn2', 'He'); Btn2.Align = alRight; Btn2.Width = 38;

  // 2. Periyot
  LayoutRow2 = MyForm.AddNewLayout(LayoutTable, 'LayoutRow2');
  LayoutRow2.Align = alTop; LayoutRow2.Height = 42; LayoutRow2.Margins.Bottom = 6;
  
  Btn3 = MyForm.AddNewButton(LayoutRow2, 'Btn3', 'Li'); Btn3.Align = alLeft; Btn3.Width = 38; Btn3.Margins.Right = 2;
  Btn4 = MyForm.AddNewButton(LayoutRow2, 'Btn4', 'Be'); Btn4.Align = alLeft; Btn4.Width = 38; Btn4.Margins.Right = 2;
  Btn5 = MyForm.AddNewButton(LayoutRow2, 'Btn5', 'B');  Btn5.Align = alLeft; Btn5.Width = 38; Btn5.Margins.Right = 2;
  Btn6 = MyForm.AddNewButton(LayoutRow2, 'Btn6', 'C');  Btn6.Align = alLeft; Btn6.Width = 38; Btn6.Margins.Right = 2;
  Btn7 = MyForm.AddNewButton(LayoutRow2, 'Btn7', 'N');  Btn7.Align = alLeft; Btn7.Width = 38; Btn7.Margins.Right = 2;
  Btn8 = MyForm.AddNewButton(LayoutRow2, 'Btn8', 'O');  Btn8.Align = alLeft; Btn8.Width = 38; Btn8.Margins.Right = 2;
  Btn9 = MyForm.AddNewButton(LayoutRow2, 'Btn9', 'F');  Btn9.Align = alLeft; Btn9.Width = 38; Btn9.Margins.Right = 2;
  Btn10 = MyForm.AddNewButton(LayoutRow2, 'Btn10', 'Ne'); Btn10.Align = alLeft; Btn10.Width = 38;

  // 3. Periyot
  LayoutRow3 = MyForm.AddNewLayout(LayoutTable, 'LayoutRow3');
  LayoutRow3.Align = alTop; LayoutRow3.Height = 42;
  
  Btn11 = MyForm.AddNewButton(LayoutRow3, 'Btn11', 'Na'); Btn11.Align = alLeft; Btn11.Width = 38; Btn11.Margins.Right = 2;
  Btn12 = MyForm.AddNewButton(LayoutRow3, 'Btn12', 'Mg'); Btn12.Align = alLeft; Btn12.Width = 38; Btn12.Margins.Right = 2;
  Btn13 = MyForm.AddNewButton(LayoutRow3, 'Btn13', 'Al'); Btn13.Align = alLeft; Btn13.Width = 38; Btn13.Margins.Right = 2;
  Btn14 = MyForm.AddNewButton(LayoutRow3, 'Btn14', 'Si'); Btn14.Align = alLeft; Btn14.Width = 38; Btn14.Margins.Right = 2;
  Btn15 = MyForm.AddNewButton(LayoutRow3, 'Btn15', 'P');  Btn15.Align = alLeft; Btn15.Width = 38; Btn15.Margins.Right = 2;
  Btn16 = MyForm.AddNewButton(LayoutRow3, 'Btn16', 'S');  Btn16.Align = alLeft; Btn16.Width = 38; Btn16.Margins.Right = 2;
  Btn17 = MyForm.AddNewButton(LayoutRow3, 'Btn17', 'Cl'); Btn17.Align = alLeft; Btn17.Width = 38; Btn17.Margins.Right = 2;
  Btn18 = MyForm.AddNewButton(LayoutRow3, 'Btn18', 'Ar'); Btn18.Align = alLeft; Btn18.Width = 38;

  // Element Butonları Tıklama Olayları
  MyForm.AddNewEvent(Btn1, tbeOnClick, 'ElementSelect'); MyForm.AddNewEvent(Btn2, tbeOnClick, 'ElementSelect');
  MyForm.AddNewEvent(Btn3, tbeOnClick, 'ElementSelect'); MyForm.AddNewEvent(Btn4, tbeOnClick, 'ElementSelect');
  MyForm.AddNewEvent(Btn5, tbeOnClick, 'ElementSelect'); MyForm.AddNewEvent(Btn6, tbeOnClick, 'ElementSelect');
  MyForm.AddNewEvent(Btn7, tbeOnClick, 'ElementSelect'); MyForm.AddNewEvent(Btn8, tbeOnClick, 'ElementSelect');
  MyForm.AddNewEvent(Btn9, tbeOnClick, 'ElementSelect'); MyForm.AddNewEvent(Btn10, tbeOnClick, 'ElementSelect');
  MyForm.AddNewEvent(Btn11, tbeOnClick, 'ElementSelect'); MyForm.AddNewEvent(Btn12, tbeOnClick, 'ElementSelect');
  MyForm.AddNewEvent(Btn13, tbeOnClick, 'ElementSelect'); MyForm.AddNewEvent(Btn14, tbeOnClick, 'ElementSelect');
  MyForm.AddNewEvent(Btn15, tbeOnClick, 'ElementSelect'); MyForm.AddNewEvent(Btn16, tbeOnClick, 'ElementSelect');
  MyForm.AddNewEvent(Btn17, tbeOnClick, 'ElementSelect'); MyForm.AddNewEvent(Btn18, tbeOnClick, 'ElementSelect');

  // --- 4. EN ALT ALAN: SIFIRLAMA BUTONU ---
  LayoutBottomBar = MyForm.AddNewLayout(MyForm, 'LayoutBottomBar');
  LayoutBottomBar.Align = alBottom;
  LayoutBottomBar.Height = 50;
  LayoutBottomBar.Margins.Left = 15;
  LayoutBottomBar.Margins.Right = 15;
  LayoutBottomBar.Margins.Bottom = 10;

  BtnReset = MyForm.AddNewProButton(LayoutBottomBar, 'BtnReset', 'Laboratuvari Yeniden Baslat');
  BtnReset.Align = alClient;
  BtnReset.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#E74C3C'); // Kırmızı
  BtnReset.clProSettings.FontColor = clAlphaColor.clWhite;
  BtnReset.clProSettings.IsRound = True;
  BtnReset.clProSettings.RoundHeight = 10;
  BtnReset.SetclProSettings(BtnReset.clProSettings);
  MyForm.AddNewEvent(BtnReset, tbeOnClick, 'ResetGame');

  // --- 5. SINIFLANDIRMA SECENEKLERI (Renkli Pro Butonlar) ---
  LayoutButtons = MyForm.AddNewLayout(MyForm, 'LayoutButtons');
  LayoutButtons.Align = alBottom; 
  LayoutButtons.Height = 110;
  LayoutButtons.Margins.Left = 15;
  LayoutButtons.Margins.Right = 15;
  LayoutButtons.Margins.Bottom = 15;

  // Cevap Grubu 1. Satir
  LayoutAns1 = MyForm.AddNewLayout(LayoutButtons, 'LayoutAns1');
  LayoutAns1.Align = alTop; LayoutAns1.Height = 50; LayoutAns1.Margins.Bottom = 10;

  BtnMetal = MyForm.AddNewProButton(LayoutAns1, 'BtnMetal', 'Metal');
  BtnMetal.Align = alLeft; BtnMetal.Width = 150;
  BtnMetal.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#3498DB'); // Mavi
  BtnMetal.clProSettings.FontColor = clAlphaColor.clWhite;
  BtnMetal.clProSettings.IsRound = True; BtnMetal.clProSettings.RoundHeight = 10;
  BtnMetal.SetclProSettings(BtnMetal.clProSettings);

  BtnAmetal = MyForm.AddNewProButton(LayoutAns1, 'BtnAmetal', 'Ametal');
  BtnAmetal.Align = alRight; BtnAmetal.Width = 150;
  BtnAmetal.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#F39C12'); // Sarı
  BtnAmetal.clProSettings.FontColor = clAlphaColor.clWhite;
  BtnAmetal.clProSettings.IsRound = True; BtnAmetal.clProSettings.RoundHeight = 10;
  BtnAmetal.SetclProSettings(BtnAmetal.clProSettings);

  // Cevap Grubu 2. Satir
  LayoutAns2 = MyForm.AddNewLayout(LayoutButtons, 'LayoutAns2');
  LayoutAns2.Align = alTop; LayoutAns2.Height = 50;

  BtnYarimetal = MyForm.AddNewProButton(LayoutAns2, 'BtnYarimetal', 'Yarimetal');
  BtnYarimetal.Align = alLeft; BtnYarimetal.Width = 150;
  BtnYarimetal.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#2ECC71'); // Yeşil
  BtnYarimetal.clProSettings.FontColor = clAlphaColor.clWhite;
  BtnYarimetal.clProSettings.IsRound = True; BtnYarimetal.clProSettings.RoundHeight = 10;
  BtnYarimetal.SetclProSettings(BtnYarimetal.clProSettings);

  BtnSoygaz = MyForm.AddNewProButton(LayoutAns2, 'BtnSoygaz', 'Soy Gaz');
  BtnSoygaz.Align = alRight; BtnSoygaz.Width = 150;
  BtnSoygaz.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#9B59B6'); // Mor
  BtnSoygaz.clProSettings.FontColor = clAlphaColor.clWhite;
  BtnSoygaz.clProSettings.IsRound = True; BtnSoygaz.clProSettings.RoundHeight = 10;
  BtnSoygaz.SetclProSettings(BtnSoygaz.clProSettings);

  // Sınıflandırma Butonları Event Atamaları
  MyForm.AddNewEvent(BtnMetal, tbeOnClick, 'CheckClassification');
  MyForm.AddNewEvent(BtnAmetal, tbeOnClick, 'CheckClassification');
  MyForm.AddNewEvent(BtnYarimetal, tbeOnClick, 'CheckClassification');
  MyForm.AddNewEvent(BtnSoygaz, tbeOnClick, 'CheckClassification');

  MyForm.Run;
}
https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon="{"version":"2024.11.0","token":"439455f3e46c40b98dbd42a2f1a954d8","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}" crossorigin="anonymous">
Yukarı Dön
Melih Açılır Kutu İzle
Deneyimli Üye
Deneyimli Üye
Simge

Kayıt Tarihi: 09 Şubat 2026
Durum: Aktif Değil
Puanlar: 88
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı Melih Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Gönderim Zamanı: 1 saat 23 Dakika Önce Saat 09:30
Merhaba bu size bir önceki sorunuzda verilen yanıttaki kodla aynı kod. "MyForm: TclForm;" satırından önceki "var"ı unuttuğunuz için hata veriyor. 
Aşağıdaki kodu "
MyForm = TclForm.Create(Self);" satırının altına yapıştırarak arka plan rengini değiştirebilirsin.

  MyForm.SetFormColor('#CBEDD5','',clGNone);

Yukarı Dön
 Yanıt Yaz Yanıt Yaz

Forum Atla Forum İzinleri Açılır Kutu İzle

Forum Software by Web Wiz Forums® version 12.07
Copyright ©2001-2024 Web Wiz Ltd.

Bu Sayfa 0,047 Saniyede Yüklendi.