Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
"Combobox" Veri Ekleme Silme
#1
Merhabalar,
Delphi 7'de çalışma yapmaktayım. Combobox'a 

Combobox2.Items.Add(Edit1.Text);

şeklide veri ekliyorum ve 

if Checkbox1.Checked = True then
     Begin
    Durum:=True;
    For cb:=0 to Combobox2.Items.Count-1 do
         Begin
         If Combobox2.Items.Strings[cb]=Edit5.Text Then
               Begin
               Durum:=False;
               Combobox2.Items.Delete(cb);
               End;
         End;
    End;

şeklinde veri siliyorum. Fakat programı kapatıp, tekrar açtığımda eklediğim verilerin silinmiş olduğunu görüyorum. Verilerin kaybolmaması için ne yapabilirim. 
Saygılarımla...
Cevapla
#2
En basit haliyle çözüm programı kapattığınız yerde ComboBox içeriğini proje klasörünüze text olarak kaydedip bir sonraki programın açılışında yeniden aynı text dosyadan geri load edilmesidir.

Örneğin :

Formunuzun OnClose olayında yani çıkarken uğrayacağı sondan bir önceki kapıdır... 

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var
  Dosya : String;
begin
  Dosya := ExtractFilePath(ParamStr(0)) + 'yedek.txt';
  ComboBox1.Items.SaveToFile( Dosya );
end;


Formunuzun OnCreate olayında yani girerken uğrayacağı kapı...

procedure TForm1.FormCreate(Sender: TObject);
var
  Dosya : String;
begin
  Dosya := ExtractFilePath(ParamStr(0)) + 'yedek.txt';
  if FileExists( Dosya ) then ComboBox1.Items.LoadFromFile( Dosya );
end;


Buna ek olarak kapanırken hangi itemde ise açılırken de aynı iteme odaklanmak için bir çalışma yapılabilir.
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif
Cevapla
#3
(28-12-2020, Saat: 19:47)mrmarman Adlı Kullanıcıdan Alıntı: En basit haliyle çözüm programı kapattığınız yerde ComboBox içeriğini proje klasörünüze text olarak kaydedip bir sonraki programın açılışında yeniden aynı text dosyadan geri load edilmesidir.

Örneğin :

Formunuzun OnClose olayında yani çıkarken uğrayacağı sondan bir önceki kapıdır... 

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var
  Dosya : String;
begin
  Dosya := ExtractFilePath(ParamStr(0)) + 'yedek.txt';
  ComboBox1.Items.SaveToFile( Dosya );
end;


Formunuzun OnCreate olayında yani girerken uğrayacağı kapı...

procedure TForm1.FormCreate(Sender: TObject);
var
  Dosya : String;
begin
  Dosya := ExtractFilePath(ParamStr(0)) + 'yedek.txt';
  if FileExists( Dosya ) then ComboBox1.Items.LoadFromFile( Dosya );
end;


Buna ek olarak kapanırken hangi itemde ise açılırken de aynı iteme odaklanmak için bir çalışma yapılabilir.
Elinize saglık.
Cevapla




Konuyu Okuyanlar: 1 Ziyaretçi