![]() |
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. |
null hatası |
Yanıt Yaz ![]() |
Yazar | |
dilarayaprak ![]() Yeni Üye ![]() Kayıt Tarihi: 07 Temmuz 2025 Durum: Aktif Değil Puanlar: 29 |
![]() Yanıt Yaz
Alıntı dilarayaprak
Bu mesaj kurallara aykırıysa buradan yöneticileri bilgilendirebilirsiniz.
![]() ![]() ![]() ![]() Gönderim Zamanı: 12 Saat 3 Dakika Önce Saat 17:42 |
sql ile listeden kelime alıp eşleştirme oyunu yapmaya çalısıyorum ama create kısmı null döndürüyor, ne yazıcağımı bilemedim yardımcı olur musunuz teşekkürler şimdidenn var matchForm: TclForm; pnlEnglish, pnlTurkish: TclProPanel; selectedEnglish, selectedTurkish: String; lblSelectedEnglish, lblSelectedTurkish: TclProLabel; lblEN, lblTR: TclProLabel; englishList, turkishList, karisikTurkish, usedIndexes: TStringList; id, correctMatch: String; i, index: Integer; void EnglishClicked; { lblSelectedEnglish = TclProLabel(matchForm.ClSender); selectedEnglish = lblSelectedEnglish.Caption; lblSelectedEnglish.ClProSettings.BorderColor = clAlphaColor.clBlue; lblSelectedEnglish.SetclProSettings(lblSelectedEnglish.ClProSettings); } void TurkishClicked; { lblSelectedTurkish = TclProLabel(matchForm.ClSender); selectedTurkish = lblSelectedTurkish.Caption; lblSelectedTurkish.ClProSettings.BorderColor = clAlphaColor.clGreen; lblSelectedTurkish.SetclProSettings(lblSelectedTurkish.ClProSettings); Clomosy.DBSQLiteQuery.Close; Clomosy.DBSQLiteQuery.SQL.Text = 'SELECT turkish FROM kartlar WHERE english = ' + QuotedStr(selectedEnglish); Clomosy.DBSQLiteQuery.OpenOrExecute; if not Clomosy.DBSQLiteQuery.Eof { correctMatch = Clomosy.DBSQLiteQuery.FieldByName('turkish').AsString; if (correctMatch == selectedTurkish) { ShowMessage('✅ Doğru Eşleşme!'); lblSelectedEnglish.Enabled = False; lblSelectedTurkish.Enabled = False; } else { ShowMessage('❌ Yanlış eşleştirme.'); } } lblSelectedEnglish.ClProSettings.BorderColor = clAlphaColor.clBlack; lblSelectedTurkish.ClProSettings.BorderColor = clAlphaColor.clBlack; lblSelectedEnglish.SetclProSettings(lblSelectedEnglish.ClProSettings); lblSelectedTurkish.SetclProSettings(lblSelectedTurkish.ClProSettings); } { matchForm = TclForm.Create(Self); matchForm.clSetCaption('Eşleştirme Oyunu'); matchForm.SetFormBGImage('https://i.imgur.com/fPwWs0H.jpeg'); pnlEnglish = matchForm.AddNewProPanel(matchForm, 'pnlEnglish'); pnlEnglish.Align = alLeft; pnlEnglish.Width = 180; pnlTurkish = matchForm.AddNewProPanel(matchForm, 'pnlTurkish'); pnlTurkish.Align = alRight; pnlTurkish.Width = 180; ![]() turkishList = TStringList.Create(''); karisikTurkish = TStringList.Create(''); usedIndexes = TStringList.Create(''); ![]() Clomosy.DBSQLiteConnect(Clomosy.AppFilesPath + 'YeniKelimeDB.db3', ''); Clomosy.DBSQLiteQuery.Close; Clomosy.DBSQLiteQuery.SQL.Text = 'SELECT english, turkish FROM kartlar ORDER BY RANDOM()'; Clomosy.DBSQLiteQuery.OpenOrExecute; if Clomosy.DBSQLiteQuery.Eof { ShowMessage('Veritabanında kelime yok!'); } while (not Clomosy.DBSQLiteQuery.Eof) { englishList.Add(Clomosy.DBSQLiteQuery.FieldByName('english').AsString); turkishList.Add(Clomosy.DBSQLiteQuery.FieldByName('turkish').AsString); Clomosy.DBSQLiteQuery.Next; } usedIndexes.Clear; i = 0; while (i < turkishList.Count) { index = clMath.GenerateRandom(0, turkishList.Count); if (usedIndexes.IndexOf(index.ToString) == -1) { usedIndexes.Add(index.ToString); karisikTurkish.Add(turkishList.Strings[index]); i = i + 1; } } i = 0; while (i < englishList.Count) { lblEN = matchForm.AddNewProLabel(pnlEnglish, 'lblEN_' + i.ToString, englishList.Strings); lblEN.Align = alTop; lblEN.Height = 40; lblEN.Margins.Top = 5; lblEN.ClProSettings.BorderColor = clAlphaColor.clBlack; lblEN.ClProSettings.BorderWidth = 2; lblEN.ClProSettings.IsTransparent = False; lblEN.ClProSettings.BackGroundColor = clAlphaColor.clHexToColor('#ddeeff'); lblEN.ClProSettings.RoundWidth = 10; lblEN.ClProSettings.RoundHeight = 10; lblEN.SetclProSettings(lblEN.ClProSettings); matchForm.AddNewEvent(lblEN, tbeOnClick, 'EnglishClicked'); i = i + 1; } i = 0; while (i < karisikTurkish.Count) { lblTR = matchForm.AddNewProLabel(pnlTurkish, 'lblTR_' + i.ToString, karisikTurkish.Strings); lblTR.Align = alTop; lblTR.Height = 40; lblTR.Margins.Top = 5; lblTR.ClProSettings.BorderColor = clAlphaColor.clBlack; lblTR.ClProSettings.BorderWidth = 2; lblTR.ClProSettings.IsTransparent = False; lblTR.ClProSettings.BackGroundColor = clAlphaColor.clHexToColor('#ffdddd'); lblTR.ClProSettings.RoundWidth = 10; lblTR.ClProSettings.RoundHeight = 10; lblTR.SetclProSettings(lblTR.ClProSettings); matchForm.AddNewEvent(lblTR, tbeOnClick, 'TurkishClicked'); i = i + 1; } matchForm.Run; } |
|
![]() |
|
dilarayaprak ![]() Yeni Üye ![]() Kayıt Tarihi: 07 Temmuz 2025 Durum: Aktif Değil Puanlar: 29 |
![]() Yanıt Yaz
Alıntı dilarayaprak
Bu mesaj kurallara aykırıysa buradan yöneticileri bilgilendirebilirsiniz.
![]() ![]() ![]() ![]() |
daha doğrusu üçlü parametre istiyor ama yazdığımda da null döndürüyor
|
|
![]() |
|
Emr.Erkmn ![]() Moderatör ![]() Kayıt Tarihi: 28 Şubat 2025 Durum: Aktif Değil Puanlar: 163 |
![]() Yanıt Yaz
Alıntı Emr.Erkmn
Bu mesaj kurallara aykırıysa buradan yöneticileri bilgilendirebilirsiniz.
![]() ![]() ![]() ![]() |
Merhaba Dilara,
Öncelikle aldığım hata bu; Unit Main: Unknown identifier or variable is not declared: 'SmileenglishList'. Source position: 61,20 https://www.docs.clomosy.com/index.php?title=TclStringList |
|
![]() |
Yanıt Yaz ![]() |
|
Tweet |
Forum Atla | Forum İzinleri ![]() Kapalı Foruma Yeni Konu Gönderme Kapalı Forumdaki Konulara Cevap Yazma Kapalı Forumda Cevapları Silme Kapalı Forumdaki Cevapları Düzenleme Kapalı Forumda Anket Açma Kapalı Forumda Anketlerde Oy Kullanma |