kodlarım aşağıdaki şekilde ve RUNTIME ERROR File library anasayfa: Unit kaloriForminstance: Syntax error. Source position: 16,25 when evaluating instruction CallProc (SFFFFFFFF, $1, SAC3728,5134734D0, RunUnit ). Stack content is: [Null, Integer: 525653400,Null, Null...]. Source position: 22,40 Position: 22, 40. HATASI ALIYORUM NE YAPMAM GEREKİYOR var kaloriFormInstance: TCLForm; mainLayout: TCLLayout; titleLabel: TCLLabel; dataListView: TCLListView; refreshButton: TCLProButton; addPanel: TCLProPanel; yemekAdiEdit: TCLProEdit; kaloriEdit: TCLProEdit; ekleButton: TCLProButton; SQLiteDB: TCLSQLiteConnection; Query: TCLSQLiteQuery; dbPath: string;
void InitializeDatabase() { dbPath = Clomosy.AppFilesPath + 'kalori.db'; SQLiteDB = kaloriFormInstance.AddNewSQLiteConnection(kaloriFormInstance, 'SQLiteDB'); SQLiteDB.DatabaseName = dbPath; try { SQLiteDB.Connect(); Query = kaloriFormInstance.AddNewSQLiteQuery(kaloriFormInstance, 'Query'); Query.Connection = SQLiteDB; Query.Sql.Text = 'CREATE TABLE IF NOT EXISTS yemekler (id INTEGER PRIMARY KEY AUTOINCREMENT, yemek_adi TEXT NOT NULL, kalori INTEGER NOT NULL)'; Query.ExecSQL(); Query.Close(); } catch { kaloriFormInstance.ShowMessage('Veritabanı bağlantı hatası!'); } }
void LoadDataToList() { var listItem: TCLListViewItem;
try { dataListView.Items.Clear(); Query.Sql.Text = 'SELECT id, yemek_adi, kalori FROM yemekler ORDER BY yemek_adi'; Query.Open(); while not Query.Eof { listItem = dataListView.Items.Add(); listItem.Text = Query.FieldByName('yemek_adi').AsString; listItem.Detail = Query.FieldByName('kalori').AsString + ' kcal'; listItem.TagString = Query.FieldByName('id').AsString; Query.Next(); } Query.Close(); } catch { kaloriFormInstance.ShowMessage('Veri yükleme hatası!'); } }
void RefreshButtonClick() { LoadDataToList(); }
void EkleButtonClick() { if (yemekAdiEdit.Text != '') and (kaloriEdit.Text != '') { try { Query.Sql.Text = 'INSERT INTO yemekler (yemek_adi, kalori) VALUES ("' + yemekAdiEdit.Text + '", ' + kaloriEdit.Text + ')'; Query.ExecSQL(); Query.Close(); yemekAdiEdit.Text = ''; kaloriEdit.Text = ''; LoadDataToList(); kaloriFormInstance.ShowMessage('Yemek başarıyla eklendi!'); } catch { kaloriFormInstance.ShowMessage('Ekleme hatası! Kalori değerinin bir sayı olduğundan emin olun.'); } } else { kaloriFormInstance.ShowMessage('Lütfen tüm alanları doldurun!'); } }
{ kaloriFormInstance = TCLForm.Create(Self); kaloriFormInstance.SetFormColor('#cce6d6', '#678e76', clGVertical);   InitializeDatabase; LoadDataToList;
kaloriFormInstance.Run; }
|