Question [Résolu] Message box erreur

Plus d'informations
il y a 15 ans 10 mois #6927 par crouzille
Bonjour a tous :)

Je suis entrain d'effectuer une programme avec une interface graphique.

Je prend en compte dedans les erreurs de frappe d'utilisateurs, donc j'avais souhaité dans ce cas afficher un message d'erreur.

Là j'ai trouver le programme de Laurent Darrenne (un grand merci pour cette fonction :) )
[code:1]function Show-MessageBox([string] $Message,[string] $Titre=\"\", [String] $IconType=\"Information\",[String] $BtnType=\"Ok\"«»)
{ #Affiche une boîte de dialogue fenêtrée
#Prérequis [void][Reflection.Assembly]::LoadWithPartialName(\"System.Windows.Forms\"«»)

trap
{
switch ($_.Exception.GetType().FullName)
{
\"System.Management.Automation.PSInvalidCastException\" {$_.message;Break}
\"System.Management.Automation.RuntimeException\" {
Throw \"Assurez-vous que l'assembly [System.Windows.Forms] est bien chargé.\"}
default {Throw $_}
}#switch
}#trap
return [Windows.Forms.MessageBox]::«»Show($Message,$Titre, $BtnType,$IconType)

# Exemples d'appel :
# Show-MessageBox \"Message\"
# Show-MessageBox \"Message\" \"Titre\"
# [void](Show-MessageBox \"Message\" \"Titre\" )
# Show-MessageBox \"Message\" \"Titre\" \"Question\" \"YesNo\"
# Show-MessageBox \"Message\" \"Titre\" \"Error\" \"AbortRitryIgnore\"
# Show-MessageBox \"Message\" \"Titre\" \"Erreur\" \"AbortRetryIgnore\"
# Show-MessageBox \"Message\" \"Titre\" \"Error\" \"AbortRetryIgnore\"
}[/code:1]


Ma question est comment récuperer la valeur du bouton sur lequel appui l'utilisateur afin de pouvoir faire une suite derrière? (Annuler, Recommencer, Ignorer)

Merci d'avance :laugh:
Jérémy<br><br>Message édité par: noir28, à: 26/05/10 10:47

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 15 ans 10 mois #6932 par Laurent Dardenne
Réponse de Laurent Dardenne sur le sujet Re:Message box erreur
noir28 écrit:

Ma question est comment récuperer la valeur du bouton sur lequel appui l'utilisateur

Tester la valeur de retour ?
[code:1]$ModalResult=Show-MessageBox \&quot;Message\&quot; \&quot;Titre\&quot; \&quot;Error\&quot; \&quot;AbortRetryIgnore\&quot;[/code:1]
:)

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 15 ans 9 mois #6936 par crouzille
Réponse de crouzille sur le sujet Re:Message box erreur
Désolé de répondre que maintenant mais j'ai du passer sur autre chose je n'ai pas pu continuer mon programme :(

Merci d'avoir pris le temps de me répondre.

Cependant je n'arrive pas à mettre cela en oeuvre.

Je lance ma fenetre d'erreur avec :[code:1]$ModalResult=Show-MessageBox \&quot;Message\&quot; \&quot;Titre\&quot; \&quot;Error\&quot; \&quot;AbortRetryIgnore\&quot;
[/code:1]

Admettons que l'utilisateur appui sur \&quot;abandonner\&quot;,
Je voudrais que la fenetre principal lancé avant se ferme. Je pensais faire pour cela:

[code:1]If ($modalresult= ici le fait que l'utilisateur est appuyer sur abbandonner)
{
fenetre_1.close()
)

[/code:1]

Mais je ne sais pas à quoi comparer $modalresult

Le fait que l'utilisateur appui sur un bouton ne créer par une variable? :huh:

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 15 ans 9 mois #6937 par Laurent Dardenne
Réponse de Laurent Dardenne sur le sujet Re:Message box erreur
noir28 écrit:

Mais je ne sais pas à quoi comparer $modalresult

Il faut lire la doc de MessageBox :

Valeur de retour
Une des valeurs de DialogResult.

noir28 écrit:

Le fait que l'utilisateur appui sur un bouton ne créer par une variable?

Non cela n'a rien à voir, on utilise ici une Api, son rôle n'est pas de créer des variables sous PowerShell.
Tu peux voir cet appel comme un appel de fonction PS renvoyant une valeur, si tu veux la mémoriser c'est à toi de la prendre en charge.
Tu peux aussi faire :
[code:1]If ((Show-MessageBox \&quot;Message\&quot; \&quot;Titre\&quot; \&quot;Error\&quot; \&quot;AbortRetryIgnore\&quot;«») -eq \&quot;Retry\&quot;«») ...[/code:1]

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 15 ans 9 mois #6960 par crouzille
Réponse de crouzille sur le sujet Re:Message box erreur
C'est bon sa marche ;)

Merci laurent pour tes réponses et d'avoir pris le temps pour ça :P

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.056 secondes
Propulsé par Kunena