je cherche a cree une petite application suivante:

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
jbernard13
Messages : 1501
Inscription : dim. 18/avr./2004 15:04
Localisation : sud de la france

je cherche a cree une petite application suivante:

Message par jbernard13 »

bonjour

je voudrais savoir svp

je cherche a cree une petite application
qui rechercherai l'extension suivantes
*.jar , et une fois trouver si il ya des fichiers
de m'afficher la recherche afin que j'efface les fichiers.


merci


Jbernard13
Heis Spiter
Messages : 1092
Inscription : mer. 28/janv./2004 16:22
Localisation : 76
Contact :

Message par Heis Spiter »

Soit tu utilise l'APi donnée précédement. Soit tu zyuete le code que j'ai posté en parti Trucs & astuces et tu modifie afin qu'il fasse ce que tu veux.
Heis Spiter, webmaster du site http://www.heisspiter.net
Développeur principal et administrateur du projet Bird Chat
Parti courir au bonheur du dév. public et GPL :D
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

Moi j'aimerais bien aider Jbernard13 alors si quelqu'un à un code, qu'il me l'envoie par email et je le posterai ici.

Merci de m'aider! :mrgreen:
Oliv
Messages : 2117
Inscription : mer. 21/janv./2004 18:39

Message par Oliv »

Code : Tout sélectionner

Procedure.s ListFiles(directory.s , filename.s, extension.s , directoryid.l ) 
  If Right(directory,1)<>"\" 
    directory+"\" 
  EndIf 
  ExamineDirectory(directoryid,directory,"*.*") 
  dirid=NextDirectoryEntry() 
  While dirid 
    Select dirid 
      Case 1 
        file.s=DirectoryEntryName() 
        this_extension.s=LCase(GetExtensionPart(file)) 
        this_filename.s=LCase(Left(file,Len(file)-Len(this_extension))) 
        If Len(this_extension) 
          this_filename=Left(this_filename,Len(this_filename)-1) 
        EndIf 
        If this_extension=extension Or extension="*" 
          If this_filename=filename Or filename="*" 
            file.s=directory+DirectoryEntryName() 
          
          Debug file
          ; commandes à effectuer ici
          
          
          EndIf 
        EndIf 
      Case 2 
        If DirectoryEntryName()<>"." And DirectoryEntryName()<>".."      
          ListFiles(directory+DirectoryEntryName()+"\",filename,extension,directoryid+1)      
          UseDirectory(directoryid) 
        EndIf 
    EndSelect 
    dirid=NextDirectoryEntry() 
  Wend 
  ProcedureReturn "" 
EndProcedure 



ListFiles(PathRequester("Selectionner le dossier-disque",""),"*","jar",0)
Je me souviens que j'avais trouvé ce code sur codearchiv mais je ne sais plus où
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

Je viens de lire mes emails, c'est sympa, y a un code! :wink:

Code : Tout sélectionner

Enumeration 
  #MainWindow 
  #ListIconGadget 
  #Text1 
  #Repertoire 
  #Requete 
  #Text2 
  #Extension 
  #Text4
  #Fichier
  #Recherche 
  #Suppression 
  #Actualiser 
  #Text3 
  #Police=0 
EndEnumeration 


Procedure.s ListFiles(directory.s , FileName.s, extension.s , directoryid.l ) 
  If Right(directory,1)<>"\" 
    directory+"\" 
  EndIf 
  ExamineDirectory(directoryid,directory,"*.*") 
  dirid=NextDirectoryEntry() 
  While dirid 
    Select dirid 
      Case 1 
        file.s=DirectoryEntryName() 
        this_extension.s=LCase(GetExtensionPart(file)) 
        this_filename.s=LCase(Left(file,Len(file)-Len(this_extension))) 
        If Len(this_extension) 
          this_filename=Left(this_filename,Len(this_filename)-1) 
        EndIf 
        If this_extension=extension Or extension="*" 
          If this_filename=FileName Or FileName="*" 
            file.s=directory+DirectoryEntryName() 
            
            AddGadgetItem(#ListIconGadget, -1, file) 
            
          EndIf 
        EndIf 
      Case 2 
        If DirectoryEntryName()<>"." And DirectoryEntryName()<>".."      
          ListFiles(directory+DirectoryEntryName()+"\",FileName,extension,directoryid+1)      
          UseDirectory(directoryid) 
        EndIf 
    EndSelect 
    dirid=NextDirectoryEntry() 
  Wend 
  ProcedureReturn "" 
EndProcedure 


Procedure Recherche(valeur.l) 
  ListFiles(GetGadgetText(#Repertoire),GetGadgetText(#Fichier),GetGadgetText(#Extension),0) 
  If CountGadgetItems(#ListIconGadget)=0 
    MessageRequester("Info", "Aucun fichier n'a été trouvé", #PB_MessageRequester_Ok) 
  Else 
    MessageRequester("Info", "Recherche terminée", #PB_MessageRequester_Ok) 
  EndIf 
  SetGadgetText(#Text3,"") 
EndProcedure 


If OpenWindow(#MainWindow, 0, 0, 550, 500, #PB_Window_ScreenCentered | #PB_Window_SystemMenu, "Jbernard13") 
  
  If CreateGadgetList(WindowID()) And ListIconGadget(#ListIconGadget, 20, 160, 500, 280, "Fichiers", 400, #PB_ListIcon_MultiSelect|#PB_ListIcon_CheckBoxes) 
    AddGadgetColumn(#ListIconGadget,1,"Etat",80) 
    TextGadget(#Text1, 20, 20, 500, 20,"Indiquer le répertoire") 
    StringGadget(#Repertoire,20, 42, 400, 20,"c:\") 
    ButtonGadget(#Requete, 440, 42, 80, 20, "Répertoire") 
    
    TextGadget(#Text2, 120, 84, 100, 20,"Extension") 
    StringGadget(#Extension,120, 106, 40, 20,"jar")
    
    TextGadget(#Text4, 20, 84, 100, 20,"Fichier") 
    StringGadget(#Fichier,20, 106, 100, 20,"*")    
    
    ButtonGadget(#Recherche, 200, 106, 120, 20, "Lancer la recherche") 
    ButtonGadget(#Suppression, 340, 106, 180, 20, "Supprimer les fichiers sélectionnés")    
    ButtonGadget(#Actualiser, 160, 460, 220, 20, "Retirer de la liste les fichiers supprimés") 
    
    LoadFont(#Police, "Courrier", 40, #PB_Font_Bold) 
    TextGadget(#Text3, 20, 136, 300, 20, "") 
    SetGadgetFont(#Text3, #Police) 
    CloseFont(#Police) 
    
    Repeat 
      event=WaitWindowEvent() 
      Select event 
        Case #PB_EventGadget 
          Select EventGadgetID() 
            Case #Requete 
              chemin$ = PathRequester("Sélectionner un répertoire", "c:\")  
              SetGadgetText(#Repertoire,chemin$)

            Case #Recherche 
              ClearGadgetItemList(#ListIconGadget) 
              SetGadgetText(#Text3,"Patienter pendant la recherche S.V.P") 
              ThreadID=CreateThread(@Recherche(), 0) 
              
            Case #Suppression 
              nombre.l=0:Probleme.l=0 
              For Element = 0 To CountGadgetItems(#ListIconGadget)-1  
                If GetGadgetItemState(#ListIconGadget, Element) & #PB_ListIcon_Checked 
                  fichier$=GetGadgetItemText(#ListIconGadget, Element, 0) 
                  Resultat = DeleteFile(fichier$) 
                  If Resultat 
                    SetGadgetItemText(#ListIconGadget, Element, "Effacé", 1) 
                    nombre=nombre+1 
                  Else 
                    SetGadgetItemText(#ListIconGadget, Element, "Erreur", 1) 
                    Probleme=Probleme+1 
                    
                  EndIf 
                EndIf 
              Next 
              
              MessageRequester("Info", "Nb de fichiers supprimés: "+Str(nombre), #PB_MessageRequester_Ok) 
              If Probleme 
                MessageRequester("Info", Str(Probleme)+"fichier(s) n'ont pu être supprimé(s)", #PB_MessageRequester_Ok) 
              EndIf 
              
            Case #Actualiser 
              For Element = 0 To CountGadgetItems(#ListIconGadget)-1 
                texte$=GetGadgetItemText(#ListIconGadget, Element,1) 
                If texte$="Effacé" 
                  RemoveGadgetItem(#ListIconGadget, Element) 
                  Element=Element-1 
                EndIf 
              Next 
              
          EndSelect 
          
        Case #PB_EventCloseWindow 
          Quit=1 
          
      EndSelect  
    Until Quit  
  EndIf 
EndIf 
End  
[Edit: j'ai rajouté 3 lignes de code]
[Edit: modifié]
Dernière modification par nico le ven. 30/juil./2004 20:06, modifié 7 fois.
jbernard13
Messages : 1501
Inscription : dim. 18/avr./2004 15:04
Localisation : sud de la france

Message par jbernard13 »

je vous remercie beaucoup de m'aider
car je suis en maladie je souffre de vertige et de trouble de mouvement
et je sors pas de chez moi ...



jbernard13
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

Je l'ai modifié pour rajouter la création d'un Thread pour la recherche, c'est mieux!

:)
jbernard13
Messages : 1501
Inscription : dim. 18/avr./2004 15:04
Localisation : sud de la france

Message par jbernard13 »

merci

dis moi nico peux m'expliquer tout le code

merci d' aider c'est sympas



jbernard13
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

C'est simple, j'ai piqué le code de Sebi pour lister les fichiers, puis après j'ai piqué le code de Fred pour l'affichage des fichiers dans la ListIcon avec les CheckBox et j'ai bricolé autour. 8)

Je ne sais pas si je vais avoir le temps de commenter, je vais être occupé les 4 jours qui viennent et quelques jours après, je pars en Vacances!

:)

[Edit: code modifié]
jbernard13
Messages : 1501
Inscription : dim. 18/avr./2004 15:04
Localisation : sud de la france

Message par jbernard13 »

merci nico

moi je pars pas je soigne mes vertiges et mon system nerveux
j'en ai pour un mois de traitement et je peux pas conduire .





Jbernard13
brossden
Messages : 833
Inscription : lun. 26/janv./2004 14:37

Message par brossden »

Bonjour

Nico , je crois qu'il serait judicieux de rajouter :
SetGadgetText(#Repertoire,chemin$)
en ligne 95 pour rafraichir le champs du répertoire selectionné par le bouton [Répertoire] !

ce qui donnerait inclus dans ton code :

Code : Tout sélectionner


            Case #Requete 
              chemin$ = PathRequester("Sélectionner un répertoire", "c:\")  
              SetGadgetText(#Repertoire,chemin$) ;<<<<<<<<<<<<<<<<<<<<---------------
            Case #Recherche 


Denis

Bonne Jounée à tous
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

C'est une erreur de ma part, cette ligne existait déjà mais je l'ai supprimé par mégarde lors des modifications sinon effectivement ça na aucun intéret!

Merci à toi!

:)
Répondre