Clomosy | Forum Ana Sayfa
Forum Anasayfa Forum Anasayfa > Genel Programlama > Genel İşlemler
  Aktif Konular Aktif Konular RSS - panel açılmıyor
  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.

panel açılmıyor

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


Kayıt Tarihi: 07 Temmuz 2025
Durum: Aktif Değil
Puanlar: 26
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı dilarayaprak Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Konu: panel açılmıyor
    Gönderim Zamanı: 12 Saat 32 Dakika Önce Saat 11:44
kullanıcının kendi eklediği kelime listesinden kelimeleri alıp ai ile karıştırıp türkçe karşılığı ile kullancıya veriyorum, ingilizcesini yazması için bir edit kısmıda veriyorum ancak kontrol et dediğimde sadece yenikelimeyükle yapıyor , sonuc paneli açıp doğru olup olmadıgını göstermiyor
Cry



var
  oyunForm: TclForm;
  vertBox: TclVertScrollBox;
  panel,bottomPanel  : TclProPanel;
  lblKarisik, lblTurkish, lblSonuc: TclProLabel;
  txtTahmin: TclProEdit;
  dogruKelime, karisikKelime: String;
  btnKontrol, btnYeniKelime,btnHome, btnIstatistik,btnOyun,btnAdd: TclProButton;
  restKaristir, restCeviri: TclRest;
  ortakPanel: TclProPanel;
  tahminPanel: TclProPanel;
  kontrolPanel: TclProPanel;
  yeniKelimePanel: TclProPanel;
  ustPanel: TclProPanel;
  imgLogo: TclProImage;
 sonucPanel : TclProPanel;
void Addtiklandi;
{
  Clomosy.RunUnit('Addbtn');
}

void hometiklandi;
{
  Clomosy.RunUnit('Homebtn');
}

void istatistiktiklandi;
{
  Clomosy.RunUnit('Istatistikbtn');
}


void btnoyuntiklandi;
{
  Clomosy.RunUnit('Oyunbtn');
}

 
void TahminKontrol;

{
  sonucPanel.visible=True;
  if (txtTahmin.Text == dogruKelime) {
    lblSonuc.Caption = '✅ Doğru!';
    lblSonuc.ClProSettings.FontColor = clAlphaColor.clGreen;
  } else {
    lblSonuc.Caption = '❌ Yanlış';
    lblSonuc.ClProSettings.FontColor = clAlphaColor.clRed;
  }
  lblSonuc.SetclProSettings(lblSonuc.ClProSettings);

 
}

void GetKaristirmaResponse;

  var veri: String;
  {
  veri = restKaristir.Response;
  karisikKelime = Clomosy.CLParseJson(veri, 'candidates.0.content.parts.0.text');

  restCeviri.Body =
    '{' +
    '  "contents": [' +
    '    {' +
    '      "parts": [' +
    '        {' +
    '          "text": "' + dogruKelime + ' kelimesinin Türkçe karşılığını ver, sadece çeviriyi yaz. Açıklama yapma."' +
    '        }' +
    '      ]' +
    '    }' +
    '  ]' +
    '}';
  restCeviri.ExecuteAsync;
}

void GetCeviriResponse;

  var veri: String;
  {
  veri = restCeviri.Response;

  lblKarisik.Caption = 'Kelime: ' + karisikKelime;
  lblTurkish.Caption = 'Türkçesi: ' + Clomosy.CLParseJson(veri, 'candidates.0.content.parts.0.text');

  txtTahmin.Text = '';
  lblSonuc.Caption = '';
}

void YeniKelimeYukle;
{
  Clomosy.DBSQLiteQuery.Close;
  Clomosy.DBSQLiteQuery.SQL.Text = 'SELECT english FROM kartlar ORDER BY RANDOM() LIMIT 1';
  Clomosy.DBSQLiteQuery.OpenOrExecute;
  dogruKelime = Clomosy.DBSQLiteQuery.FieldByName('english').AsString;

  restKaristir.Body =
    '{' +
    '  "contents": [' +
    '    {' +
    '      "parts": [' +
    '        {' +
    '          "text": "' + dogruKelime + ' kelimesinin harflerini karıştır ve sadece karışık halini ver."' +
    '        }' +
    '      ]' +
    '    }' +
    '  ]' +
    '}';
  restKaristir.ExecuteAsync;
}

{
  
  restKaristir = TclRest.Create;
  restKaristir.OnCompleted = 'GetKaristirmaResponse';
  restKaristir.BaseUrl = 'https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent?key=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
  restKaristir.Method = rmPost;
  restKaristir.ContentType = 'application/json';

  restCeviri = TclRest.Create;
  restCeviri.OnCompleted = 'GetCeviriResponse';
  restCeviri.BaseUrl = 'https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent?key=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
  restCeviri.Method = rmPost;
  restCeviri.ContentType = 'application/json';

 
  oyunForm = TclForm.Create(Self);
  oyunForm.clSetCaption('Kelime Tahmin Oyunu');
  oyunForm.SetFormBGImage('https://i.imgur.com/fPwWs0H.jpeg');

  panel = oyunForm.AddNewProPanel(oyunForm, 'panel');
  panel.Align=alClient;
  panel.Height=800;
  panel.Width=800;
  panel.clProSettings.RoundHeight=40;
  panel.clProSettings.Roundwidth=40;
  panel.clProSettings.IsTransparent =False;
  panel.SetclProSettings(panel.clProSettings);



ustPanel = oyunForm.AddNewProPanel(panel, 'ustPanel');
ustPanel.Align = alMostTop;
ustPanel.Margins.top = 30;
ustPanel.Height = 100;
ustPanel.Margins.Top =100;
ustPanel.clProSettings.IsTransparent = True;
ustPanel.SetclProSettings(ustPanel.clProSettings);


imgLogo = oyunForm.AddNewProImage(ustPanel, 'imgLogo');
imgLogo.Align = alCenter;
imgLogo.Height = 100;
imgLogo.Width = 100;
imgLogo.ClProSettings.PictureSource = 'https://i.imgur.com/LjOx6Em.png'; 
imgLogo.SetclProSettings(imgLogo.ClProSettings);

 

 ortakPanel = oyunForm.AddNewProPanel(panel, 'ortakPanel');
 ortakPanel.Align = altop;
 ortakPanel.Margins.top = 30;
 ortakPanel.Height = 120;
 ortakPanel.Margins.left = 50;
 ortakPanel.Margins.right = 50 ;
 ortakPanel.clProSettings.BackGroundColor = clAlphaColor.clHexToColor('#660000');  
 ortakPanel.clProSettings.RoundHeight = 20;
 ortakPanel.clProSettings.RoundWidth = 20;
 ortakPanel.clProSettings.IsTransparent = False;
 ortakPanel.SetclProSettings(ortakPanel.clProSettings);


lblKarisik = oyunForm.AddNewProLabel(ortakPanel, 'lblKarisik', '');
lblKarisik.Align = alTop;
lblKarisik.Margins.Top = 20;
lblKarisik.ClProSettings.FontSize = 18;
lblKarisik.ClProSettings.FontColor = clAlphaColor.clHexToColor('#ffffff');
lblKarisik.ClProSettings.IsTransparent = True;
lblKarisik.SetclProSettings(lblKarisik.ClProSettings);


 lblTurkish = oyunForm.AddNewProLabel(ortakPanel, 'lblTurkish', '');
 lblTurkish.Align = alTop;
 lblTurkish.Margins.Bottom = 10;
 lblTurkish.Margins.Top = 25;
 lblTurkish.ClProSettings.FontSize = 18;
 lblTurkish.ClProSettings.FontColor = clAlphaColor.clHexToColor('#ffffff');
 lblTurkish.ClProSettings.IsTransparent = True;
 lblTurkish.SetclProSettings(lblTurkish.ClProSettings);
 
  
  tahminPanel = oyunForm.AddNewProPanel(panel, 'tahminPanel');
  tahminPanel.Align = altop;
  tahminPanel.Margins.top = 20;
  tahminPanel.Height = 100;
  tahminPanel.Margins.Top = 30;
  tahminPanel.clProSettings.IsTransparent = True;
  tahminPanel.SetclProSettings(tahminPanel.clProSettings);

txtTahmin = oyunForm.AddNewProEdit(tahminPanel, 'txtTahmin', 'kelimeyi yaz');
txtTahmin.Align = alCenter;
txtTahmin.Width = 290;
txtTahmin.Height = 70;
txtTahmin.clProSettings.BackGroundColor = clAlphaColor.clHextoColor('#11212d');
txtTahmin.clProSettings.IsTransparent = True;
txtTahmin.clProSettings.IsFill = False;
txtTahmin.clProSettings.IsRound = True;
txtTahmin.clProSettings.RoundHeight = 20;
txtTahmin.clProSettings.Roundwidth = 20;
txtTahmin.clProSettings.FontSize = 20;
txtTahmin.clProSettings.FontColor = clAlphaColor.clHexToColor('#ffffff');
txtTahmin.clProSettings.BorderColor = clAlphaColor.clHexToColor('#000000');
txtTahmin.SetclProSettings(txtTahmin.clProSettings);

kontrolPanel = oyunForm.AddNewProPanel(panel, 'kontrolPanel');
kontrolPanel.Align = altop;
kontrolPanel.Height = 80;
kontrolPanel.Margins.top = 50;
kontrolPanel.Margins.Top = 20;
kontrolPanel.Margins.right = 100;
kontrolPanel.Margins. left = 100 ;
kontrolPanel.clProSettings.IsTransparent = True;
kontrolPanel.SetclProSettings(kontrolPanel.clProSettings);

btnKontrol = oyunForm.AddNewProButton(kontrolPanel, '', 'Kontrol Et');
btnKontrol.Align = altop;
btnKontrol.Width = 180;
btnKontrol.Height = 60;
btnKontrol.clProSettings.RoundHeight = 20;
btnKontrol.clProSettings.Roundwidth = 20;
btnKontrol.ClProSettings.BackGroundColor = clAlphaColor.clHexToColor('#f4bcbc');
btnKontrol.SetclProSettings(btnKontrol.ClProSettings);
oyunForm.AddNewEvent(btnKontrol, tbeOnClick, 'TahminKontrol');
 
sonucPanel = oyunForm.AddNewProPanel(panel, 'sonucPanel');
sonucPanel.Align = alCenter;
sonucPanel.Height = 80;
sonucPanel.Margins.Top = 10;
sonucPanel.Visible = False;
sonucPanel.clProSettings.IsTransparent = True;
sonucPanel.SetclProSettings(sonucPanel.clProSettings);

// Sonuç Label
lblSonuc = oyunForm.AddNewProLabel(sonucPanel, '', '');
lblSonuc.Align = alCenter;
lblSonuc.clProSettings.FontSize = 22;
lblSonuc.clProSettings.FontColor = clAlphaColor.clBlack;
lblSonuc.clProSettings.TextSettings.Font.Style = [fsBold];
lblSonuc.clProSettings.IsTransparent = True;
lblSonuc.SetclProSettings(lblSonuc.clProSettings);


yeniKelimePanel = oyunForm.AddNewProPanel(panel, 'yeniKelimePanel');
yeniKelimePanel.Align = altop;
yeniKelimePanel.Margins.top = 50 ; 
yeniKelimePanel.Height = 80;
yeniKelimePanel.Margins.Top = 10;
yeniKelimePanel.clProSettings.IsTransparent = True;
yeniKelimePanel.SetclProSettings(yeniKelimePanel.clProSettings);

btnYeniKelime = oyunForm.AddNewProButton(yeniKelimePanel, '', 'Yeni Kelime');
btnYeniKelime.Align = alCenter;
btnYeniKelime.Width = 180;
btnYeniKelime.Height = 60;
btnYeniKelime.clProSettings.RoundHeight = 20;
btnYeniKelime.clProSettings.Roundwidth = 20;
btnYeniKelime.ClProSettings.BackGroundColor = clAlphaColor.clHexToColor('#f4bcbc');
btnYeniKelime.SetclProSettings(btnYeniKelime.ClProSettings);
oyunForm.AddNewEvent(btnYeniKelime, tbeOnClick, 'YeniKelimeYukle');
  
 
bottomPanel=oyunForm.AddNewProPanel(panel,'bottomPanel');
bottomPanel.Align=alMostBottom;
bottomPanel.Align=alHorizontal;
bottomPanel.Height=50;
bottomPanel.Width=300;
bottomPanel.clProSettings.RoundHeight=20;
bottomPanel.clProSettings.Roundwidth=20;
bottomPanel.clProSettings.IsTransparent =False;
bottomPanel.clProSettings.BorderColor = clAlphaColor.clHexToColor('#ffffff');
bottomPanel.clProSettings.BorderWidth = 2;
bottomPanel.SetclProSettings(bottomPanel.clProSettings);
// home
btnHome = oyunForm.AddNewProButton(bottomPanel, 'btnHome', '');
btnHome.Align = alLeft;
btnHome.margins.left=20;
btnHome.margins.bottom=10;
btnHome.Width = 70;
btnHome.Height = 70;
btnHome.clProSettings.IsRound = True;
btnHome.clProSettings.RoundHeight = 10;
btnHome.clProSettings.RoundWidth = 10;
btnHome.SetclProSettings(btnHome.clProSettings);
oyunForm.SetImage(btnHome,'https://i.imgur.com/FfEKaFY.png'); 
oyunForm.AddNewEvent(btnHome, tbeOnClick, 'hometiklandi');
 
 // 🟥 ADD
btnAdd = oyunForm.AddNewProButton(bottomPanel, 'btnAdd', '');
btnAdd.Align = alLeft;
btnAdd.margins.left=20;
btnAdd.margins.bottom=10;
btnAdd.Width = 70;
btnAdd.Height = 70;
btnAdd.clProSettings.IsRound = True;
btnAdd.clProSettings.RoundHeight = 10;
btnAdd.clProSettings.RoundWidth = 10;
btnAdd.SetclProSettings(btnHome.clProSettings);
oyunForm.SetImage(btnAdd,'https://i.imgur.com/bB8i9zb.png'); 
oyunForm.AddNewEvent(btnAdd, tbeOnClick, 'Addtiklandi');



// 🟥 OYUN
btnOyun = oyunForm.AddNewProButton(bottomPanel, 'btnOyun', '');
btnOyun.Align = alLeft;
btnOyun.margins.left=20;
btnOyun.margins.bottom=10;
btnOyun.Width = 70;
btnOyun.Height = 70;
btnOyun.clProSettings.IsRound = True;
btnOyun.clProSettings.RoundHeight = 10;
btnOyun.clProSettings.RoundWidth = 10;
btnOyun.SetclProSettings(btnOyun.clProSettings);
oyunForm.SetImage(btnOyun,'https://i.imgur.com/ewHakWR.png');
oyunForm.AddNewEvent(btnOyun, tbeOnClick, 'btnoyuntiklandi');

// 🟥 İSTATİSTİK
btnIstatistik = oyunForm.AddNewProButton(bottomPanel, 'btnIstatistik', '');
btnIstatistik.Align = alLeft;
btnIstatistik.margins.left=20;
btnIstatistik.margins.bottom=10;
btnIstatistik.Width = 70;
btnIstatistik.Height = 70;
btnIstatistik.clProSettings.IsRound = True;
btnIstatistik.clProSettings.RoundHeight = 10;
btnIstatistik.clProSettings.RoundWidth = 10;
btnIstatistik.SetclProSettings(btnIstatistik.clProSettings);
oyunForm.SetImage(btnIstatistik,'https://i.imgur.com/n0uCd4p.png');
oyunForm.AddNewEvent(btnIstatistik, tbeOnClick, 'istatistiktiklandi');


  // İlk kelime yükle
 
  YeniKelimeYukle;

 oyunForm.Run;
}
Yukarı Dön
haletr Açılır Kutu İzle
Kıdemli Üye
Kıdemli Üye
Simge

Kayıt Tarihi: 16 Haziran 2025
Konum: Konya
Durum: Aktif Değil
Puanlar: 138
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı haletr Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Gönderim Zamanı: 11 Saat 23 Dakika Önce Saat 12:53
Merhaba,

öncelikle veritabanı bağlantısının sorgudan önce yapılması gerekiyor.

void YeniKelimeYukle;
{
  // Veritabanı bağlantısı
  Clomosy.DBSQLiteConnect(Clomosy.AppFilesPath + 'kelime_kartlari.db3', '');
  Clomosy.DBSQLiteQuery.Close;
  Clomosy.DBSQLiteQuery.SQL.Text = 'SELECT english FROM kartlar ORDER BY RANDOM() LIMIT 1';
  Clomosy.DBSQLiteQuery.OpenOrExecute;
  dogruKelime = Clomosy.DBSQLiteQuery.FieldByName('english').AsString;

Sonuc panelinin gözükmemesinin sebebi yerleştirmeden dolayı olabilir.
Align=alTop; yapıp butona tıklanınca gözüküyor mu dener misin? Umarım yardımcı olur. İyi çalışmalar.
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,063 Saniyede Yüklendi.