Listview seçilen itemdeki dosyayı pc'den silmek

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
carsoft
Üye
Mesajlar: 138
Kayıt: 01 Ağu 2014 12:27

Listview seçilen itemdeki dosyayı pc'den silmek

Mesaj gönderen carsoft »

Öncelikle arkadaşlar baba annem vefat etti, tüm vefat edenlere Allah rahmet etsin.

Listview'deki verilerimi ini dosyasından çekiyorum. 2 subitem bulunmakta,
1-tarih;
2-dosya konumu , fakat ben seçilen itemdeki dosyayı bilgisayardan nasıl silebilirim.
Kullanıcı avatarı
brs
Üye
Mesajlar: 626
Kayıt: 04 Eki 2012 03:52

Re: Listview seçilen itemdeki dosyayı pc'den silmek

Mesaj gönderen brs »

DeleteFile('C:\DB\Database.db');
İşi bilen yardım eder, az bilen akıl verir, bilmeyen eleştirir, yapamayan ise çamur atar...
carsoft
Üye
Mesajlar: 138
Kayıt: 01 Ağu 2014 12:27

Re: Listview seçilen itemdeki dosyayı pc'den silmek

Mesaj gönderen carsoft »

Ben o şekilde belirli bir konumdaki dosyayı degilde,listview'e veriyi ini dosyasından aldığım için
dosyaların konumları farklı,ben seçilen iteme ait dosya konumunundan silinmesini istiyorum.
bu şekilde iniden alıyorum.

Kod: Tümünü seç

procedure TForm1.FormShow(Sender: TObject);
var
  yedek : TIniFile;
  ListCount : TStringList;
  i : Integer;
begin
  ListView1.Clear;
  ListCount := TStringList.Create;
  yedek:= TIniFile.Create(yedekler+'yedek.dat');
  yedek.ReadSections(ListCount);
  for i:= 0 to ListCount.Count -1 do
  begin
    with ListView1.Items.Insert(0) do
    begin
      Caption := yedek.ReadString(IntToStr(i),'DateTime','N/A');
      subitems.Add(yedek.ReadString(IntToStr(i),'Path','N/A'));
    end;
    Application.ProcessMessages;
  end;
  yedek.Free;
  ListCount.Free;
  Application.ProcessMessages;
  for i := 0 to ListView1.Items.Count-1 do
  lbyedek.Caption := IntToStr(i+1);
end;
carsoft
Üye
Mesajlar: 138
Kayıt: 01 Ağu 2014 12:27

Re: Listview seçilen itemdeki dosyayı pc'den silmek

Mesaj gönderen carsoft »

konu günceldir arkadaşlar
Kullanıcı avatarı
brs
Üye
Mesajlar: 626
Kayıt: 04 Eki 2012 03:52

Re: Listview seçilen itemdeki dosyayı pc'den silmek

Mesaj gönderen brs »

carsoft yazdı:konu günceldir arkadaşlar

50 dakika sonra konuya güncel yazmanıza şaşırdım;

(ben seçilen iteme ait dosya konumunundan silinmesini istiyorum.) demek ki dosya yolunu biliyoruz işte burada yapman gereken şey ise


DeleteFile(DOSYA YOLUNU EKLEMEK);
İşi bilen yardım eder, az bilen akıl verir, bilmeyen eleştirir, yapamayan ise çamur atar...
carsoft
Üye
Mesajlar: 138
Kayıt: 01 Ağu 2014 12:27

Re: Listview seçilen itemdeki dosyayı pc'den silmek

Mesaj gönderen carsoft »

peki dosya yolunu ini'den veya itemden nasıl alabilirim ''subitems.Add(yedek.ReadString(IntToStr(i),'Path','N/A'))''
Kullanıcı avatarı
brs
Üye
Mesajlar: 626
Kayıt: 04 Eki 2012 03:52

Re: Listview seçilen itemdeki dosyayı pc'den silmek

Mesaj gönderen brs »

Dikkat et ListView Click yaptığın anda dosya silinir kendine göre uyarla

Kod: Tümünü seç

procedure TForm2.ListView2Click(Sender: TObject);
var
Yol: String;
begin
  with ListView2 do
  begin
    if Selected <> Nil then
    begin
     DeleteFile(Selected.SubItems[1]) 
    end;
  end;
end;
İşi bilen yardım eder, az bilen akıl verir, bilmeyen eleştirir, yapamayan ise çamur atar...
carsoft
Üye
Mesajlar: 138
Kayıt: 01 Ağu 2014 12:27

Re: Listview seçilen itemdeki dosyayı pc'den silmek

Mesaj gönderen carsoft »

yardımların için teşşekürler brs. işimi gördü ben düzenlerim.
carsoft
Üye
Mesajlar: 138
Kayıt: 01 Ağu 2014 12:27

Re: Listview seçilen itemdeki dosyayı pc'den silmek

Mesaj gönderen carsoft »

peki seçili olanı degilde hepsini birden nasıl silebilirim.multi select degeri true
Kullanıcı avatarı
brs
Üye
Mesajlar: 626
Kayıt: 04 Eki 2012 03:52

Re: Listview seçilen itemdeki dosyayı pc'den silmek

Mesaj gönderen brs »

Ben databaseden silmek için kullanıyorum sen klasör olarak değiştir...

Kod: Tümünü seç

procedure TForm1.SilClick(Sender: TObject);
begin
  try
    with ListView1 do
    begin
      for i := Items.Count - 1 downto 0 do
      begin
        if Items[i].Checked then
        begin
          with Playlist do
          begin
            Close;
            SQL.Text := 'Delete From PLAYLIST Where ID =' +   Items[i].SubItems[8];
            ExecSQL;
            Items.Delete(i);
          end;
        end;
      end;
    end;
  except
  end;
end;
İşi bilen yardım eder, az bilen akıl verir, bilmeyen eleştirir, yapamayan ise çamur atar...
carsoft
Üye
Mesajlar: 138
Kayıt: 01 Ağu 2014 12:27

Re: Listview seçilen itemdeki dosyayı pc'den silmek

Mesaj gönderen carsoft »

saol brs bu anlamam için çok yardımcı oldu.
Cevapla