cs_JackNUMBER
Messages postés233Date d'inscriptionjeudi 30 septembre 2004StatutMembreDernière intervention26 juin 2011
-
19 nov. 2008 à 23:18
cs_JackNUMBER
Messages postés233Date d'inscriptionjeudi 30 septembre 2004StatutMembreDernière intervention26 juin 2011
-
22 nov. 2008 à 23:06
bonsoir à tous !!
je vous pose le décors : j'ai un FileListBox qui est relié à un DirectoryListBox pour parcourir des fichiers. Les items de mon FileListBox sont copiés sur un CheckListBox, ceci en vue de cocher des fichier pour les supprimer. (accessoiremeent mon
FileListBox
est masqué).
et voici mes petits soucis : j'aimerai ne cocher que les fichiers commençant par la lettre "K", ensuite j'aimerai supprimer que les fichiers cochés.
même si vous ne connaissez qu'une partie des réponses à mes interrogations je suis preneur !!
merci d'avance pour votre aide.
à bientôt
A voir également:
Sélectionner et supprimer les fichiers commençant par K
cs_neil
Messages postés67Date d'inscriptionlundi 12 mai 2003StatutMembreDernière intervention19 janvier 2009 22 nov. 2008 à 15:26
Bonjour,
pour afficher le contenu du directorylistbox dans ton checklistbox (uniquement les fichiers) :
dans le onchange du DLB : CLB.Items:=DLB.FileList.Items ;
pour le reste :
for i := 0 to CLB.items.count-1 do //coche automatiquement tout les fichiers commencant par K ou k
CLB.Checked[i] := CLB.items.strings[i][1] = 'K';
//suppression des items cochés
for i := 0 to CLB.items.count-1 do //supprime automatique tout les items de CLB cochés
if CLB.Checked[i] then
DeleteFile(DLB.Directory+'\'+CLB.Items.Strings[i] )
Cordiament.
Remarque : dans ce cas les fichiers commencant par K sont cochés automatiquement et non par l'utilisateur
Guillemouze
Messages postés991Date d'inscriptionsamedi 25 octobre 2003StatutMembreDernière intervention29 août 20136 19 nov. 2008 à 23:58
ca me semble un peu bizare d'utiliser une fileListBox cachée pour lister les fichiers, pourquoi ne pas le faire manuellement?
sinon pour tes soucis, tu peux faire :
<hr size="2" width="100%" />//coche des K*for i :0 to FLB.Lines.count-1 do //CLB CheckListBox
CLB.Checked[i] := CLB.Lines[i][0] = 'K';
//suppression des items cochés
for i := 0 to CLB.Lines.count-1 do
if CLB.Checked[i] then
DeleteFile(DLB.Path + CLB.Lines[i]);
cs_JackNUMBER
Messages postés233Date d'inscriptionjeudi 30 septembre 2004StatutMembreDernière intervention26 juin 20115 20 nov. 2008 à 23:33
bonjour !
merci de ta réponse, j'ai essayé les 2 parties du script et j'obtient 2 messages d'erreur qui sont :
L'unité 'FileCtrl' est propre à une plate-forme
que j'ai résolu en mettant {$warn unit_platform off} en haut de l'Unit concernée.
et
Déclaration attendu(e) mais 'FOR' trouvé(e)
j'ai déclaré " i " avec
var
I: Integer;
et j'ai enlevé begin (si je le laissai 'Path' et 'Lines' n'était pas reconnus, peut-être parce que c'est un CheckListBox et non un FileListBox...)
Je ne comprend pas pourquoi ça ne marche pas.
il faut dire que je peux être considéré comme débutant ^^
pour ce qui est du filelistbox caché c'est parce que je n'ai pas réussi à afficher le contenu du dossier du
DirectoryListBox directement dans le CheckListBox.