Merhaba Hatice, Bu hatanın alınmasının sebebi Her butona tıklandığında birden fazla form kullanılmasından kaynaklı. Form hafızadan silinmediği için bu hata alınıyor. Çözüm için tek bir form üzerinde farklı ekranlar için panel açabilirsin. Paneller ekranlar arası geçişte görünürlüğünü açıp kapatabilirsin
var MainForm : TclForm; PnlAnaMenu, PnlKayit, PnlGiris, PnlArama : TclProPanel; RegUserEdt, RegPassEdt, RegPassConfEdt : TclProEdit; RegShowBtn, BtnDoReg, BtnReg, BtnLog, BtnDoLog : TclProButton; LogUserEdt, LogPassEdt : TclProEdit; LogShowBtn : TclProButton; RobotChk, TermsChk : TclCheckBox; SearchEdt : TclProEdit; SearchBtn : TclProButton; NovaTitle, WelcomeLbl : TclProLabel; SavedUser, SavedPass : String;
void ButunEkranlariKapat; { PnlAnaMenu.Visible = False; PnlKayit.Visible = False; PnlGiris.Visible = False; PnlArama.Visible = False; }
void GoToRegister; { ButunEkranlariKapat; PnlKayit.Visible = True; }
void GoToLogin; { ButunEkranlariKapat; PnlGiris.Visible = True; }
void GoToAnaMenu; { ButunEkranlariKapat; PnlAnaMenu.Visible = True; }
void ShowHidePassReg; { if (RegPassEdt.Password == True) { RegPassEdt.Password = False; RegPassConfEdt.Password = False; } else { RegPassEdt.Password = True; RegPassConfEdt.Password = True; } }
void ShowHidePassLog; { if (LogPassEdt.Password == True) LogPassEdt.Password = False; else LogPassEdt.Password = True; }
void OnRegisterClick; { if (Length(RegUserEdt.Text) < 8) { ShowMessage('Kullanici adi en az 8 karakter olmali!'); } else if (RegPassEdt.Text <> RegPassConfEdt.Text) { ShowMessage('Sifreler uyusmuyor!'); } else if (Length(RegPassEdt.Text) < 8) { ShowMessage('Sifre en az 8 karakter olmali!'); } else { SavedUser = RegUserEdt.Text; SavedPass = RegPassEdt.Text; ShowMessage('Kayit Basarili! Giris yapabilirsiniz.'); GoToLogin; } }
void OnLoginClick; { if ((TermsChk.IsChecked == False) || (RobotChk.IsChecked == False)) { ShowMessage('Lutfen kutucuklari onaylayin!'); Exit; } if ((LogUserEdt.Text == SavedUser) && (LogPassEdt.Text == SavedPass)) { ButunEkranlariKapat; PnlArama.Visible = True; } else { ShowMessage('Hatali kullanici adi veya sifre!'); } }
{ MainForm = TclForm.Create(Self); MainForm.SetFormColor('#f0f2f5', '', clGNone);
PnlAnaMenu = MainForm.AddNewProPanel(MainForm, 'PnlAnaMenu'); PnlAnaMenu.Align = alClient; WelcomeLbl = MainForm.AddNewProLabel(PnlAnaMenu, 'WelcomeLbl', 'NoVA'); WelcomeLbl.Align = alTop; WelcomeLbl.Margins.Top = 80; WelcomeLbl.Height = 60; WelcomeLbl.clProSettings.FontSize = 50; WelcomeLbl.clProSettings.FontHorzAlign = palCenter; WelcomeLbl.clProSettings.FontColor = clAlphaColor.clHexToColor('#4285F4'); WelcomeLbl.SetclProSettings(WelcomeLbl.clProSettings); BtnReg = MainForm.AddNewProButton(PnlAnaMenu, 'BtnReg', 'Kayit Ol'); BtnReg.Align = alTop; BtnReg.Margins.Top = 100; BtnReg.Margins.Left = 50; BtnReg.Margins.Right = 50; BtnReg.Height = 50; MainForm.AddNewEvent(BtnReg, tbeOnClick, 'GoToRegister');
BtnLog = MainForm.AddNewProButton(PnlAnaMenu, 'BtnLog', 'Giris Yap'); BtnLog.Align = alTop; BtnLog.Margins.Top = 20; BtnLog.Margins.Left = 50; BtnLog.Margins.Right = 50; BtnLog.Height = 50; MainForm.AddNewEvent(BtnLog, tbeOnClick, 'GoToLogin');
PnlKayit = MainForm.AddNewProPanel(MainForm, 'PnlKayit'); PnlKayit.Align = alClient; PnlKayit.Visible = False; // Başlangıçta gizli
RegUserEdt = MainForm.AddNewProEdit(PnlKayit, 'RegUser', 'Yeni Kullanici Adi'); RegUserEdt.Align = alTop; RegUserEdt.Margins.Top = 50; RegUserEdt.Margins.Left = 30; RegUserEdt.Margins.Right = 30; RegUserEdt.Height = 45; RegPassEdt = MainForm.AddNewProEdit(PnlKayit, 'RegPass', 'Sifre'); RegPassEdt.Align = alTop; RegPassEdt.Margins.Top = 10; RegPassEdt.Margins.Left = 30; RegPassEdt.Margins.Right = 30; RegPassEdt.Height = 45; RegPassEdt.Password = True; RegPassConfEdt = MainForm.AddNewProEdit(PnlKayit, 'RegPassConf', 'Sifre Tekrar'); RegPassConfEdt.Align = alTop; RegPassConfEdt.Margins.Top = 10; RegPassConfEdt.Margins.Left = 30; RegPassConfEdt.Margins.Right = 30; RegPassConfEdt.Height = 45; RegPassConfEdt.Password = True;
RegShowBtn = MainForm.AddNewProButton(PnlKayit, 'RegShowBtn', 'Goster/Gizle'); RegShowBtn.Align = alTop; RegShowBtn.Margins.Top = 5; RegShowBtn.Margins.Right = 30; RegShowBtn.Height = 30; RegShowBtn.Width = 100; MainForm.AddNewEvent(RegShowBtn, tbeOnClick, 'ShowHidePassReg');
BtnDoReg = MainForm.AddNewProButton(PnlKayit, 'BtnDoReg', 'Hesap Olustur'); BtnDoReg.Align = alBottom; BtnDoReg.Margins.Bottom = 50; BtnDoReg.Margins.Left = 30; BtnDoReg.Margins.Right = 30; BtnDoReg.Height = 55; BtnDoReg.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#2ecc71'); BtnDoReg.SetclProSettings(BtnDoReg.clProSettings); MainForm.AddNewEvent(BtnDoReg, tbeOnClick, 'OnRegisterClick');
PnlGiris = MainForm.AddNewProPanel(MainForm, 'PnlGiris'); PnlGiris.Align = alClient; PnlGiris.Visible = False; // Başlangıçta gizli
LogUserEdt = MainForm.AddNewProEdit(PnlGiris, 'LogUser', 'Kullanici Adi'); LogUserEdt.Align = alTop; LogUserEdt.Margins.Top = 50; LogUserEdt.Margins.Left = 30; LogUserEdt.Margins.Right = 30; LogUserEdt.Height = 45; LogPassEdt = MainForm.AddNewProEdit(PnlGiris, 'LogPass', 'Sifre'); LogPassEdt.Align = alTop; LogPassEdt.Margins.Top = 10; LogPassEdt.Margins.Left = 30; LogPassEdt.Margins.Right = 30; LogPassEdt.Height = 45; LogPassEdt.Password = True;
LogShowBtn = MainForm.AddNewProButton(PnlGiris, 'LogShowBtn', 'Goster/Gizle'); LogShowBtn.Align = alTop; LogShowBtn.Margins.Top = 5; LogShowBtn.Margins.Right = 30; LogShowBtn.Height = 30; LogShowBtn.Width = 100; MainForm.AddNewEvent(LogShowBtn, tbeOnClick, 'ShowHidePassLog');
RobotChk = MainForm.AddNewCheckBox(PnlGiris, 'RobotChk', 'Ben robot degilim'); RobotChk.Align = alTop; RobotChk.Margins.Left = 35; RobotChk.Margins.Top = 15; RobotChk.Height = 40; TermsChk = MainForm.AddNewCheckBox(PnlGiris, 'TermsChk', 'Anlasmayi kabul ediyorum'); TermsChk.Align = alTop; TermsChk.Margins.Left = 35; TermsChk.Height = 40;
BtnDoLog = MainForm.AddNewProButton(PnlGiris, 'BtnDoLog', 'Giris'); BtnDoLog.Align = alBottom; BtnDoLog.Margins.Bottom = 50; BtnDoLog.Margins.Left = 30; BtnDoLog.Margins.Right = 30; BtnDoLog.Height = 55; BtnDoLog.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#3498db'); BtnDoLog.SetclProSettings(BtnDoLog.clProSettings); MainForm.AddNewEvent(BtnDoLog, tbeOnClick, 'OnLoginClick');
PnlArama = MainForm.AddNewProPanel(MainForm, 'PnlArama'); PnlArama.Align = alClient; PnlArama.Visible = False; // Başlangıçta gizli PnlArama.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#FFFFFF'); PnlArama.SetclProSettings(PnlArama.clProSettings);
NovaTitle = MainForm.AddNewProLabel(PnlArama, 'NovaTitle', 'NoVA'); NovaTitle.Align = alTop; NovaTitle.Margins.Top = 150; NovaTitle.Height = 100; NovaTitle.clProSettings.FontSize = 60; NovaTitle.clProSettings.FontColor = clAlphaColor.clHexToColor('#4285F4'); NovaTitle.clProSettings.FontHorzAlign = palCenter; NovaTitle.SetclProSettings(NovaTitle.clProSettings);
SearchEdt = MainForm.AddNewProEdit(PnlArama, 'SearchEdt', 'NoVA''da ara...'); SearchEdt.Align = alTop; SearchEdt.Margins.Left = 40; SearchEdt.Margins.Right = 40; SearchEdt.Height = 50; SearchEdt.clProSettings.RoundHeight = 25; SearchEdt.clProSettings.BorderColor = clAlphaColor.clHexToColor('#dfe1e5'); SearchEdt.SetclProSettings(SearchEdt.clProSettings);
SearchBtn = MainForm.AddNewProButton(PnlArama, 'SearchBtn', 'Arastir'); SearchBtn.Align = alTop; SearchBtn.Margins.Top = 20; SearchBtn.Width = 120; SearchBtn.Height = 45; SearchBtn.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#f8f9fa'); SearchBtn.clProSettings.FontColor = clAlphaColor.clHexToColor('#3c4043'); SearchBtn.clProSettings.RoundHeight = 10; SearchBtn.SetclProSettings(SearchBtn.clProSettings);
MainForm.Run; }
https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" rel="nofollow - https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" 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">
|