2017-09-14 4 views
-4

Je veux créer une boucle afin que les éléments sélectionnés dans ma liste soient supprimés du répertoire.Comment faire une boucle pour supprimer les éléments sélectionnés dans le répertoire

procedure TFContact.BtnDeleteClick(Sender: TObject); 
var 
SecItem, BUFPath : string; 
i : Integer; 
begin 
    if ListViewTab5.Selected <> nil then 

    for i := 0 to ListViewTab5.Items.Count - 1 do 
    begin 
    SecItem:= TListViewItem(ListViewTab5.Selected).Text; 
    BUFPath:= '/storage/emulated/0/Backup/'+SecItem; 
    TFile.Delete(BUFPath); 
    end 
    else 
    ShowMessage('File Deleted Succesfully'); 
end; 
+0

Quelle est votre question? –

+0

Vous voulez dire vérifié, non sélectionné, n'est-ce pas? Btw. La boucle ne peut pas avoir la branche 'else'. – Victoria

+0

Ma boucle ne fonctionne pas son seul élément de suppression 1 ('/ storage/emulated/0/Backup /') les éléments sélectionnés dans la liste. – Munir

Répondre

1

Essayez ceci:

procedure TFContact.BtnDeleteClick(Sender: TObject); 
const 
    Path = '/storage/emulated/0/Backup/'; 
var 
    Item: TListViewItem; 
begin 
    for Item in ListView.Items do 
    if Item.Checked then 
     TFile.Delete(TPath.Combine(Path, Item.Text)); 
end; 
+1

J'ai posé une mauvaise question parce que je regardais au mauvais endroit. vous avez d'excellentes compétences pour comprendre et deviner ma question. Je dois écrire correctement afin que les autres n'aient pas besoin de deviner – Munir

+1

Ce que vous devez faire, par-dessus tout, c'est faire un effort pour apprendre à déboguer. Tant que vous ne pourrez pas déboguer, vous ferez peu de progrès. –