Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Récupérer chemin de FolderBorwserDialog ?

11 réponses
Avatar
LE TROLL
Bonjour,

Comment récupérer les chein valié par <ok> d'un folderBrowserDialog, voici
mon code :

Sub SauvegardeClefActivationToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
SauvegardeClefActivationToolStripMenuItem.Click
Dim t As String
t = "SAUVEGARDE : Du fichier la clef d'activation" & vbLf &
"fin_clef.txt" & vbLf & "Choisissez la cible ?"
FolderBrowserDialog1.Description = t
FolderBrowserDialog1.ShowDialog()
End Sub

Sub FolderBrowserDialog1_HelpRequest(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles FolderBrowserDialog1.HelpRequest
If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then 'L'utilisateur
a bien cliqué sur ok
MsgBox("OK")
End If
MsgBox(FolderBrowserDialog1.SelectedPath)
MsgBox(e)
End Sub


En fait je sais que ça se récupère dans :
FolderBrowserDialog1.SelectedPath

OUI, mais à quel endroit, quelle procédure, comment ?

Merci, cordialement ;o)

-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.

10 réponses

1 2
Avatar
Jacques93
LE TROLL a écrit :
Bonjour,

Comment récupérer les chein valié par <ok> d'un folderBrowserDialog,
voici mon code :

Sub SauvegardeClefActivationToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
SauvegardeClefActivationToolStripMenuItem.Click
Dim t As String
t = "SAUVEGARDE : Du fichier la clef d'activation" & vbLf &
"fin_clef.txt" & vbLf & "Choisissez la cible ?"
FolderBrowserDialog1.Description = t
FolderBrowserDialog1.ShowDialog()



Essaie ceci :
-->
If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then
' Display the selected folder if the user clicked on the OK button.
MessageBox.Show(FolderBrowserDialog1.SelectedPath)
Else
...
End If
<--

--

Cordialement,

Jacques.
Avatar
LE TROLL
Oui, mais dans quelle procédure ???

--
Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"Jacques93" a écrit dans le message de
news:
LE TROLL a écrit :
Bonjour,

Comment récupérer les chein valié par <ok> d'un folderBrowserDialog,
voici mon code :

Sub SauvegardeClefActivationToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
SauvegardeClefActivationToolStripMenuItem.Click
Dim t As String
t = "SAUVEGARDE : Du fichier la clef d'activation" & vbLf &
"fin_clef.txt" & vbLf & "Choisissez la cible ?"
FolderBrowserDialog1.Description = t
FolderBrowserDialog1.ShowDialog()



Essaie ceci :
-->
If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then
' Display the selected folder if the user clicked on the OK button.
MessageBox.Show(FolderBrowserDialog1.SelectedPath)
Else
...
End If
<--

--

Cordialement,

Jacques.


Avatar
LE TROLL
Jacques,

J'ai fait ça :

Sub FolderBrowserDialog1_HelpRequest(ByVal sender As System.Object, ByVal e
As System.EventArgs) Handles FolderBrowserDialog1.HelpRequest
If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then

MessageBox.Show(FolderBrowserDialog1.SelectedPath)

End If

End Sub


Ce qui ne produit strictement rien, moi je me demande si c'est bien dans :

Sub FolderBrowserDialog1_HelpRequest

Qu'il faut tester ???

Cordialement ;o)

-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"Jacques93" a écrit dans le message de
news:
LE TROLL a écrit :
Bonjour,

Comment récupérer les chein valié par <ok> d'un folderBrowserDialog,
voici mon code :

Sub SauvegardeClefActivationToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
SauvegardeClefActivationToolStripMenuItem.Click
Dim t As String
t = "SAUVEGARDE : Du fichier la clef d'activation" & vbLf &
"fin_clef.txt" & vbLf & "Choisissez la cible ?"
FolderBrowserDialog1.Description = t
FolderBrowserDialog1.ShowDialog()



Essaie ceci :
-->
If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then
' Display the selected folder if the user clicked on the OK button.
MessageBox.Show(FolderBrowserDialog1.SelectedPath)
Else
...
End If
<--

--

Cordialement,

Jacques.


Avatar
Jacques93
LE TROLL a écrit :
Jacques,

J'ai fait ça :

Sub FolderBrowserDialog1_HelpRequest(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles FolderBrowserDialog1.HelpRequest
If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then

MessageBox.Show(FolderBrowserDialog1.SelectedPath)

End If

End Sub


Ce qui ne produit strictement rien, moi je me demande si c'est bien dans :

Sub FolderBrowserDialog1_HelpRequest

Qu'il faut tester ???




Je dirai non (je n'ai pas installé Visual Studio 2008), comme indiqué
dans mon message précédent, peut être pas assez clair, c'est une
modification dans l'événement
'SauvegardeClefActivationToolStripMenuItem_Click'. En supposant que la
méthode 'ShowDialog' soit modale, elle devrait renvoyer un valeur de
retour :


Sub SauvegardeClefActivationToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
SauvegardeClefActivationToolStripMenuItem.Click
Dim t As String
t = "SAUVEGARDE : Du fichier la clef d'activation" & vbLf &
"fin_clef.txt" & vbLf & "Choisissez la cible ?"
FolderBrowserDialog1.Description = t
' FolderBrowserDialog1.ShowDialog()
' *** REMPLACEMENT ***
If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then
' Display the selected folder if the user clicked on the OK button.
MessageBox.Show(FolderBrowserDialog1.SelectedPath)
Else
...
End If
End Sub

--

Cordialement,

Jacques.
Avatar
LE TROLL
Jacques t'es un chef !

Chat marche !

Mais ça défit tout ce que je connaissais il me semble, voici le code :

Sub SauvegardeClefActivationToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
SauvegardeClefActivationToolStripMenuItem.Click
Dim t As String
t = "SAUVEGARDE : Du fichier la clef d'activation" & vbLf &
"fin_clef.txt" & vbLf & "Choisissez la cible ?"
FolderBrowserDialog1.Description = t
un:
If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then
deux:
t = FolderBrowserDialog1.SelectedPath
MessageBox.Show(t)
End If
End Sub
---------------

Normalement adr "un", le reste de la procédure se déroule, mais comme il
n'y a pas encore de chois, ça sort à adr "deux", ok, sans doute

Ce que je ne comprends pas, c'est que ça signifi que de lui mettre
DialogResult.OK, c'est comme si on lui demandait de revenir à adr "un" après
le choix bouton pour tester ce qui a été choisi.

Je n'avais jamais vu un tuc pareil, habituellement l'objet avec un
bouton à une procédure événementielle click ou dbclick tout simplement,
alors que là, il faut tout comme un grand, mais comment le savoir ?

Ce n'est plus de la programmation événementielle, c'est de la
programmation divinatoire, je n'y comprend rien de ce que fabrique ce
machin, et comment il revient dans sa procédure, ou alors il met en mémoire
quelque chose qui permet d'avoir l'équivalent d'un retour dans la procédure,
bref, je ne sais...

Oui il est modal.

N'hésite pas à venir souvent, car j'ai pas mal de question encore,
régulièrement, et je ne croule pas sous les réponses, là preuve...

Mais merci quand même, cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"Jacques93" a écrit dans le message de
news:Oy%
LE TROLL a écrit :
Jacques,

J'ai fait ça :

Sub FolderBrowserDialog1_HelpRequest(ByVal sender As System.Object, ByVal
e As System.EventArgs) Handles FolderBrowserDialog1.HelpRequest
If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then

MessageBox.Show(FolderBrowserDialog1.SelectedPath)

End If

End Sub


Ce qui ne produit strictement rien, moi je me demande si c'est bien dans
:

Sub FolderBrowserDialog1_HelpRequest

Qu'il faut tester ???




Je dirai non (je n'ai pas installé Visual Studio 2008), comme indiqué dans
mon message précédent, peut être pas assez clair, c'est une modification
dans l'événement 'SauvegardeClefActivationToolStripMenuItem_Click'. En
supposant que la méthode 'ShowDialog' soit modale, elle devrait renvoyer
un valeur de retour :


Sub SauvegardeClefActivationToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
SauvegardeClefActivationToolStripMenuItem.Click
Dim t As String
t = "SAUVEGARDE : Du fichier la clef d'activation" & vbLf &
"fin_clef.txt" & vbLf & "Choisissez la cible ?"
FolderBrowserDialog1.Description = t
' FolderBrowserDialog1.ShowDialog()
' *** REMPLACEMENT ***
If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then
' Display the selected folder if the user clicked on the OK button.
MessageBox.Show(FolderBrowserDialog1.SelectedPath)
Else
...
End If
End Sub

--

Cordialement,

Jacques.


Avatar
Jacquouille14
LE TROLL a écrit :
Jacques t'es un chef !

Chat marche !

Mais ça défit tout ce que je connaissais il me semble, voici le code :

Sub SauvegardeClefActivationToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
SauvegardeClefActivationToolStripMenuItem.Click
Dim t As String
t = "SAUVEGARDE : Du fichier la clef d'activation" & vbLf &
"fin_clef.txt" & vbLf & "Choisissez la cible ?"
FolderBrowserDialog1.Description = t
un:
If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then
deux:
t = FolderBrowserDialog1.SelectedPath
MessageBox.Show(t)
End If
End Sub
---------------



FolderBrowserDialog1.Description est le message affiché pour
l'utilisateur du prog.
Donc vous pouvez mettre:
FolderBrowserDialog1.Description= "SAUVEGARDE : Du fichier la clef
d'activation" & vbLf & "fin_clef.txt" & vbLf & "Choisissez la cible ?"

FolderBrowserDialog1.SelectedPath est la récupération du chemin
cliqué par l'utilisateur. Le chemin peut être au préalable imposé
à la boite de dialogue.
Si l'utilisateur indique un bon chemin par clique sur une dossier
il y a branchement dans le if et il est possible d'utiliser le
chemin utilisateur. Si l'utilisateur n'indique aucun chemin
il y a branchement après le end if ou dans un else pour traiter
le refus de chemin par l'utilisateur.
--

Jacques dit Jacquouille
Avatar
LE TROLL
merci

--
Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"Jacquouille14" a écrit dans le message de
news:4b1b72de$0$30641$
LE TROLL a écrit :
Jacques t'es un chef !

Chat marche !

Mais ça défit tout ce que je connaissais il me semble, voici le code :

Sub SauvegardeClefActivationToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
SauvegardeClefActivationToolStripMenuItem.Click
Dim t As String
t = "SAUVEGARDE : Du fichier la clef d'activation" & vbLf &
"fin_clef.txt" & vbLf & "Choisissez la cible ?"
FolderBrowserDialog1.Description = t
un:
If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then
deux:
t = FolderBrowserDialog1.SelectedPath
MessageBox.Show(t)
End If
End Sub
---------------



FolderBrowserDialog1.Description est le message affiché pour l'utilisateur
du prog.
Donc vous pouvez mettre:
FolderBrowserDialog1.Description= "SAUVEGARDE : Du fichier la clef
d'activation" & vbLf & "fin_clef.txt" & vbLf & "Choisissez la cible ?"

FolderBrowserDialog1.SelectedPath est la récupération du chemin
cliqué par l'utilisateur. Le chemin peut être au préalable imposé
à la boite de dialogue.
Si l'utilisateur indique un bon chemin par clique sur une dossier
il y a branchement dans le if et il est possible d'utiliser le
chemin utilisateur. Si l'utilisateur n'indique aucun chemin
il y a branchement après le end if ou dans un else pour traiter
le refus de chemin par l'utilisateur.
--

Jacques dit Jacquouille


Avatar
Jacques93
LE TROLL a écrit :
Jacques t'es un chef !

Chat marche !

Mais ça défit tout ce que je connaissais il me semble, voici le code :

Sub SauvegardeClefActivationToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
SauvegardeClefActivationToolStripMenuItem.Click
Dim t As String
t = "SAUVEGARDE : Du fichier la clef d'activation" & vbLf &
"fin_clef.txt" & vbLf & "Choisissez la cible ?"
FolderBrowserDialog1.Description = t
un:
If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then
deux:
t = FolderBrowserDialog1.SelectedPath
MessageBox.Show(t)
End If
End Sub
---------------

Normalement adr "un", le reste de la procédure se déroule, mais comme
il n'y a pas encore de chois, ça sort à adr "deux", ok, sans doute

Ce que je ne comprends pas, c'est que ça signifi que de lui mettre
DialogResult.OK, c'est comme si on lui demandait de revenir à adr "un"
après le choix bouton pour tester ce qui a été choisi.

Je n'avais jamais vu un tuc pareil, habituellement l'objet avec un
bouton à une procédure événementielle click ou dbclick tout simplement,
alors que là, il faut tout comme un grand, mais comment le savoir ?

Ce n'est plus de la programmation événementielle, c'est de la
programmation divinatoire, je n'y comprend rien de ce que fabrique ce
machin, et comment il revient dans sa procédure, ou alors il met en
mémoire quelque chose qui permet d'avoir l'équivalent d'un retour dans
la procédure, bref, je ne sais...

Oui il est modal.

N'hésite pas à venir souvent, car j'ai pas mal de question encore,
régulièrement, et je ne croule pas sous les réponses, là preuve...

Mais merci quand même, cordialement ;o)



En complément de la réponse de Jaquouille14, et en essayant d'utiliser
la terminologie adéquate, la méthode 'ShowDialog' de l'objet
'FolderBrowserDialog' se comporte comme une fonction, cad qu'elle
retourne une valeur.

Toute la différence entre 'Sub' et 'Function' de VB6, en quelque sorte.
Je crois savoir que tu as toujours été un peu frileux avec les
'Function' sous VB6. Ceci explique peut être cela ...

Il me semble que DialogResult.OK est tout simplement une constante
(correspondant aux 'Enum' de VB6), et on ne fait que tester l'égalité
entre la valeur que renvoie la méthode 'ShowDialog' et cette constante.

En VB6, on pourrait écrire :

Private Sub Command1_Click()
' Msgbox employé en tant que fonction (Function)
If MsgBox("LE TROLL attaque .Net 2008", vbOKCancel) = vbOK Then
'Msgbox utilisé en tant que procédure (Sub)
MsgBox "Yes, il le fait"
Else
'Msgbox utilisé en tant que procédure (Sub)
MsgBox "Ben non, pas encore !!!"
End If
End Sub

Par ailleurs, bien que d'autres événements puissent se produire(Aide,
création de répertoire, etc...), le fait de faire appel à 'ShowDialog',
bloque le/la [événement|procédure|fonction] qui l'a appelé, tout comme
les CommonDialog de VB6. A la différence que pour ceux ci il fallait
tester une propriété de l'objet en retour.


Pour le reste, si tu me paie VS 2008 (Pro minimum :-D ), je reviens !

PS : Je veux pas être chef ! Juste Vizir à la place du Vizir ;-)

--

Cordialement,

Jacques.
Avatar
LE TROLL
Bonjour Jaques,

Oui, j'en ai déduit que l'appel était bloquant, mais ça il faut le
savoir dans les données technique, c'est en fait la boîte qui prend le
relais et qui rend la main ensuite, mais à première vue, sans savoir, on a
l'impression que ça descend en séquence, et qu'il faut donc une autre
évènement pour capter le clique (ce qui est la généralité).

Pourquoi tu veux la version pro de vbNet ? Moi j'ai la pro en vb6
(achetée), mais là, l'express 2008 gratuit est suffisante il me semble pour
faire ce que l'on faisait avec vb6, il te manquerait quoi de capital (entre
l'express et la pro "en vbNet") ?

Cordialement ;o)
-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"Jacques93" a écrit dans le message de
news:
LE TROLL a écrit :
Jacques t'es un chef !

Chat marche !

Mais ça défit tout ce que je connaissais il me semble, voici le code :

Sub SauvegardeClefActivationToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
SauvegardeClefActivationToolStripMenuItem.Click
Dim t As String
t = "SAUVEGARDE : Du fichier la clef d'activation" & vbLf &
"fin_clef.txt" & vbLf & "Choisissez la cible ?"
FolderBrowserDialog1.Description = t
un:
If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then
deux:
t = FolderBrowserDialog1.SelectedPath
MessageBox.Show(t)
End If
End Sub
---------------

Normalement adr "un", le reste de la procédure se déroule, mais comme
il n'y a pas encore de chois, ça sort à adr "deux", ok, sans doute

Ce que je ne comprends pas, c'est que ça signifi que de lui mettre
DialogResult.OK, c'est comme si on lui demandait de revenir à adr "un"
après le choix bouton pour tester ce qui a été choisi.

Je n'avais jamais vu un tuc pareil, habituellement l'objet avec un
bouton à une procédure événementielle click ou dbclick tout simplement,
alors que là, il faut tout comme un grand, mais comment le savoir ?

Ce n'est plus de la programmation événementielle, c'est de la
programmation divinatoire, je n'y comprend rien de ce que fabrique ce
machin, et comment il revient dans sa procédure, ou alors il met en
mémoire quelque chose qui permet d'avoir l'équivalent d'un retour dans la
procédure, bref, je ne sais...

Oui il est modal.

N'hésite pas à venir souvent, car j'ai pas mal de question encore,
régulièrement, et je ne croule pas sous les réponses, là preuve...

Mais merci quand même, cordialement ;o)



En complément de la réponse de Jaquouille14, et en essayant d'utiliser la
terminologie adéquate, la méthode 'ShowDialog' de l'objet
'FolderBrowserDialog' se comporte comme une fonction, cad qu'elle retourne
une valeur.

Toute la différence entre 'Sub' et 'Function' de VB6, en quelque sorte. Je
crois savoir que tu as toujours été un peu frileux avec les 'Function'
sous VB6. Ceci explique peut être cela ...

Il me semble que DialogResult.OK est tout simplement une constante
(correspondant aux 'Enum' de VB6), et on ne fait que tester l'égalité
entre la valeur que renvoie la méthode 'ShowDialog' et cette constante.

En VB6, on pourrait écrire :

Private Sub Command1_Click()
' Msgbox employé en tant que fonction (Function)
If MsgBox("LE TROLL attaque .Net 2008", vbOKCancel) = vbOK Then
'Msgbox utilisé en tant que procédure (Sub)
MsgBox "Yes, il le fait"
Else
'Msgbox utilisé en tant que procédure (Sub)
MsgBox "Ben non, pas encore !!!"
End If
End Sub

Par ailleurs, bien que d'autres événements puissent se produire(Aide,
création de répertoire, etc...), le fait de faire appel à 'ShowDialog',
bloque le/la [événement|procédure|fonction] qui l'a appelé, tout comme les
CommonDialog de VB6. A la différence que pour ceux ci il fallait tester
une propriété de l'objet en retour.


Pour le reste, si tu me paie VS 2008 (Pro minimum :-D ), je reviens !

PS : Je veux pas être chef ! Juste Vizir à la place du Vizir ;-)

--

Cordialement,

Jacques.


Avatar
LE TROLL
Bonjour Jacquouille,

Oui, j'ai désormais compris, l'appel passe la main à la boîte, mais ceci
ne se déduit pas, à premièe vue ça devrait descendre en séquence, et avoir
un évènement clique pour le retour.
Par exemple, une inputBox, tu ne testes pas le résultat dans l'appel, tu
appelles, et ensuite tu testes le résultat en dessous en séquence, ah...

Merci et cordialement ;o)

-
Logiciels, romans, contacts : http://irolog.free.fr
_______________________
.
.


"Jacquouille14" a écrit dans le message de
news:4b1b72de$0$30641$
LE TROLL a écrit :
Jacques t'es un chef !

Chat marche !

Mais ça défit tout ce que je connaissais il me semble, voici le code :

Sub SauvegardeClefActivationToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
SauvegardeClefActivationToolStripMenuItem.Click
Dim t As String
t = "SAUVEGARDE : Du fichier la clef d'activation" & vbLf &
"fin_clef.txt" & vbLf & "Choisissez la cible ?"
FolderBrowserDialog1.Description = t
un:
If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then
deux:
t = FolderBrowserDialog1.SelectedPath
MessageBox.Show(t)
End If
End Sub
---------------



FolderBrowserDialog1.Description est le message affiché pour l'utilisateur
du prog.
Donc vous pouvez mettre:
FolderBrowserDialog1.Description= "SAUVEGARDE : Du fichier la clef
d'activation" & vbLf & "fin_clef.txt" & vbLf & "Choisissez la cible ?"

FolderBrowserDialog1.SelectedPath est la récupération du chemin
cliqué par l'utilisateur. Le chemin peut être au préalable imposé
à la boite de dialogue.
Si l'utilisateur indique un bon chemin par clique sur une dossier
il y a branchement dans le if et il est possible d'utiliser le
chemin utilisateur. Si l'utilisateur n'indique aucun chemin
il y a branchement après le end if ou dans un else pour traiter
le refus de chemin par l'utilisateur.
--

Jacques dit Jacquouille


1 2