Page 1 sur 1
[RESOLU] Open Directory
Publié : mar. 05/juin/2012 17:45
par Arbrakan
Salutations à tous.
Je me suis perdu dans la doc PureBASIC, et je ne trouve pas comment ouvrir le dossier courant via un click sur un boutton... Juste ouvrir un dossier en gros.
Y a bien des commandes de la bibliothèque FileSystem, mais rien à se niveau la, a moins que mes lunettes sois sale.
j'ai pensé a faire un tour au niveau de des commandes "Requester" mais rien non-plus.
need help.
D'avance, Merci pour vos réponses.
Re: Open Directory
Publié : mar. 05/juin/2012 22:58
par falsam
NomFichier$ =
OpenFileRequester(Titre$, FichierParDefaut$, Filtre$, FiltrePosition [, Options])
Code : Tout sélectionner
Enumeration
#Mainform
#Button
EndEnumeration
Global File$, Filtre$
Procedure Open_MainForm()
OpenWindow(#Mainform, 0, 0, 500, 400, "New Form")
ButtonGadget(#Button, 20,20, 100, 22, "Choisir un fichier")
EndProcedure
Open_MainForm()
Repeat
Select WaitWindowEvent()
Case #PB_Event_Gadget
Select EventGadget() ;<<==== ça se passe là
Case #Button
Filtre$="Texte (*.txt)|*.txt;*.bat|PureBasic (*.pb)|*.pb|Tous les fichiers (*.*)|*.*"
File$ = OpenFileRequester("Choisir un fichier ....", "", Filtre$, 1)
If File$ ;Si fichier selectionné
Debug File$
EndIf
EndSelect
Case #PB_Event_CloseWindow
End
EndSelect
ForEver
Re: Open Directory
Publié : mer. 06/juin/2012 9:44
par Arbrakan
Merci d'avoir pris le temps pour me répondre.
Par contre c'est pas ce que je recherche, Ce que je cherche a faire c'est ouvrir un dossier via un bouton, comme tu l'as fait dans l'exemple. mais ouvrir un dossier avec une chemin spécifique, mais sans le Open File Rquester.
Exemple:
c:\files\MonDossier
J'y ai réfléchi, et je pensai partir sur du explorer.exe avec le chemin du dossier courant. pour ouvrir mon dossier.
Je sais pas si c'est la manière de faire la plus opti.. je vais continuer mes recherche, en tout cas Merci pour ta réponse rapide falsam
belle journée a vous !
Re: Open Directory
Publié : mer. 06/juin/2012 10:17
par falsam
Peut être comme ceci.
Code : Tout sélectionner
Enumeration
#Mainform
#Button
#Explorer
#Content
EndEnumeration
Procedure Open_MainForm()
OpenWindow(#Mainform, 0, 0, 500, 400, "New Form")
ButtonGadget(#Button, 20,20, 100, 22, "Choisir un fichier")
EndProcedure
Open_MainForm()
Repeat
Select WaitWindowEvent()
Case #PB_Event_Gadget
Select EventGadget() ;<<==== ça se passe là
Case #Button
If OpenWindow(#Explorer, 0, 0, 400, 200, "Explorer", #PB_Window_SystemMenu|#PB_Window_WindowCentered|#PB_Window_SizeGadget, WindowID(#mainform))
;Exemple pour le dossier Users (Window7)
ExplorerListGadget(#Content, 0, 0, 400, 200, "C:\users\", #PB_Explorer_MultiSelect)
SetGadgetAttribute(#Content, #PB_Explorer_DisplayMode , #PB_Explorer_LargeIcon)
EndIf
Case #Content
Select EventType()
Case #PB_EventType_Change
Case #PB_EventType_LeftClick
Debug GetGadgetText(#Content) + GetGadgetItemText(#Content, GetGadgetState(#Content))
EndSelect
EndSelect
Case #PB_Event_SizeWindow
If IsWindow(#Explorer)
ResizeGadget(#Content, #PB_Ignore, #PB_Ignore, WindowWidth(#Explorer), WindowHeight(#Explorer))
EndIf
Case #PB_Event_CloseWindow
End
EndSelect
ForEver
Re: Open Directory
Publié : mer. 06/juin/2012 10:22
par djes
Arbrakan a écrit :Merci d'avoir pris le temps pour me répondre.
Par contre c'est pas ce que je recherche, Ce que je cherche a faire c'est ouvrir un dossier via un bouton, comme tu l'as fait dans l'exemple. mais ouvrir un dossier avec une chemin spécifique, mais sans le Open File Rquester.
Exemple:
c:\files\MonDossier
J'y ai réfléchi, et je pensai partir sur du explorer.exe avec le chemin du dossier courant. pour ouvrir mon dossier.
Je sais pas si c'est la manière de faire la plus opti.. je vais continuer mes recherche, en tout cas Merci pour ta réponse rapide falsam
belle journée a vous !
Si c'est en mode console, oui, c'est comme ça

Re: Open Directory
Publié : mer. 06/juin/2012 12:42
par Ar-S
Si tu souhaites ouvrir une fenêtre explorer indépendante de ton logiciel en appuyant sur un bouton, rien de plus simple:
Code : Tout sélectionner
; Pour ouvrir le dossier TEMP par exemple.
RunProgram ("C:\Temp")
En reprenant l'exemple de falsam
Code : Tout sélectionner
Enumeration
#Mainform
#Button
EndEnumeration
Global File$, Filtre$
Procedure Open_MainForm()
OpenWindow(#Mainform, 0, 0, 500, 400, "New Form")
ButtonGadget(#Button, 20,20, 100, 22, "Ouvrir TEMP")
EndProcedure
Open_MainForm()
Repeat
Select WaitWindowEvent()
Case #PB_Event_Gadget
Select EventGadget() ;<<==== ça se passe là
Case #Button
RunProgram ("C:\Temp")
EndSelect
Case #PB_Event_CloseWindow
End
EndSelect
ForEver
Re: Open Directory
Publié : mer. 06/juin/2012 19:38
par Arbrakan
Parfait !, merci a tous pour vos réponses rapide, ça fait plaisir et c'est en plus en français..

Content de passé sur ce forum, belle communautés, je vais m'y installé un moment si cela ne vous dérange pas.
Pour le petit background, je suis a la base WebDesign, et je code aussi en DarkBASIC depuis quelques années, depuis 1année env. je me suis mit au PureBASIC, j'en suis devenu fan, surtout avec la doc en français, ça aide ^^
Donc si y en as qui touche au DarkBASIC où besoin d'aide niveau web, je peux toujours aider.
Bref content d'être là, et merci encore.
Belle soirée et bon code à tous !
Arbrakan
Re: [RESOLU] Open Directory
Publié : mer. 06/juin/2012 20:10
par falsam
Bienvenue à toi sur ce forum

Re: [RESOLU] Open Directory
Publié : mer. 06/juin/2012 20:15
par Arbrakan
Merci !, (Ton avatar m'agace déjà...

)
Re: [RESOLU] Open Directory
Publié : mer. 06/juin/2012 20:22
par blendman
bienvenue sur le forum

Re: [RESOLU] Open Directory
Publié : mer. 06/juin/2012 21:39
par Arbrakan
Merci blendman, sympa ton blog ! Et bonne suite pour
Arkeos Chronicle .
Je n'ai pas énormément testé de langages (un peu de C et de C++, un peu de python) et je ne suis pas développeur de base (je suis graphiste), donc, ce langage s'est vite avéré être le langage de prédilection pour moi.
Je vois que tu as eu le même Virus, et que tu viens aussi du monde des pixels, j'aime !
Arbrakan
Re: [RESOLU] Open Directory
Publié : jeu. 07/juin/2012 11:09
par djes
Bienvenue
