Comment intercepter le bouton aide d'une boîte de dialogue

Résolu
cs_dayvid Messages postés 212 Date d'inscription mardi 18 janvier 2011 Statut Membre Dernière intervention 12 février 2013 - 23 janv. 2013 à 14:04
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 - 23 janv. 2013 à 21:45
Bonjour,

J'aimerais savoir comment je peut intercepter le bouton aide de la boîte de dialogue quand l'utilisateur clique dessus
Je n'est pas trouver comment faire même avec le MDSN:
Module Module1

    Sub Main()

        Dim Message As String
        Dim Titre As String
        Dim Style As MsgBoxStyle
        Dim Réponse As MsgBoxResult

        Message = "Voullez-vous continuer ?!"   ' Définie le message de la boîte de dialogue.
        Style = MsgBoxStyle.DefaultButton2 Or MsgBoxStyle.Exclamation Or MsgBoxStyle.YesNo Or MsgBoxStyle.SystemModal Or MsgBoxStyle.MsgBoxHelp
        Titre = "Exemple boîte de dialogue"   ' Définie le titre de la boîte de dialogue.

        ' Affiche la boîte de dialogue.
        Réponse = MsgBox(Message, Style, Titre)

        If Réponse = MsgBoxResult.Yes Then   ' Si le bouton "Oui" est cliqué.

        Else ' Sinon

        End If

    End Sub

End Module

15 réponses

cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 137
23 janv. 2013 à 17:37
Bonjour,
Essaie ceci:

  'Affiche une boîte de message. Le bouton Aide ouvre; 
        'le fichier d'aide mspaint.chm et affiche le contenu d'aide;
        ' sur l'onglet Index.
        Dim result = MessageBox.Show("Message avec le fichier Aide et Aide navigateur.", _
                                           "Aide", MessageBoxButtons.YesNoCancel, _
                                           MessageBoxIcon.Question, _
                                           MessageBoxDefaultButton.Button1, _
                                           0, "mspaint.chm", _
                                           HelpNavigator.Index)
        If result = DialogResult.Cancel Then
            MessageBox.Show("Annuler pressé")
        ElseIf result = DialogResult.No Then
            MessageBox.Show("Non pressé")
        ElseIf result = DialogResult.Yes Then
            MessageBox.Show("Oui pressé")
       End If

@+ Le Pivert
3
Utilisateur anonyme
23 janv. 2013 à 18:08
Bonjour,

MsgBox et ses options sont obsolètes. Ils sont remplacés par MessageBox.

Pour pouvoir accéder au bouton d'aide de la boîte de dialogue, tu dois t'abonner à l'événement HelpRequested de ton formulaire :
AddHandler HelpRequested, AddressOf MonAide

Sa signature sera de cette sorte :
Private Sub MonAide(ByVal sender As Object, ByVal e As HelpEventArgs)
  '... code ici
End Sub

Enfin, on affiche cette boîte par exemple de cette façon :
Réponse = MessageBox.Show(Message, _
                          Titre, _
                          MessageBoxButtons.OK, _
                          MessageBoxIcon.Asterisk, _
                          MessageBoxDefaultButton.Button1, _
                          Nothing, _
                          True)

Le dernier paramètre 'True' fait s'afficher ce fameux bouton d'aide.
3
Utilisateur anonyme
23 janv. 2013 à 19:21
On peut mais ça n'a aucun intérêt.

1/Ajouter une référence à System.Windows.Forms dans les propriétés du projet.
2/Ajouter l'import dans l'entête de classe :
Imports System.Windows.Forms

Après tu peux afficher :
Sub Main()
  MessageBox.Show("blabla")
End Sub
3
Utilisateur anonyme
23 janv. 2013 à 20:09
De rien

Et que voilà ?
Et bien l'astuce du jour tant attendue voyons !!!
Il faut écrire 'CE' lorsqu'on ne peut pas le remplacer par 'ME'.
Il faut écrire 'SE' lorsqu'on peut le remplacer par 'ME'.
3

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_dayvid Messages postés 212 Date d'inscription mardi 18 janvier 2011 Statut Membre Dernière intervention 12 février 2013 1
23 janv. 2013 à 17:55
Bonjour,

je suis désoler mais ton exemple ne fonctionne pas cher moi, il ne reconnais pas certain mots
Il faut surement exporter quelque chose ?!

Un exemple proche du mien est-il possible ?, pourquoi n'as-tu pas repris mon code ?
Merci quand même !
0
Utilisateur anonyme
23 janv. 2013 à 18:41
Je constate à l'instant que tu es en mode console. On utilise pas de boîtes de dialogues en mode console.
0
cs_dayvid Messages postés 212 Date d'inscription mardi 18 janvier 2011 Statut Membre Dernière intervention 12 février 2013 1
23 janv. 2013 à 19:01
Mais ya un truc que je me demande quand même !

Comment y font les gars pour dire que tu est en mode strict ou pas, ou que t'es en mode console ou autre
La vache, son fort ici quand même pour deviner ça, ya rien qui le dit pourtant

Non mais sérieux quoi, arrêtez de m'espionner cher moi hein

On utilise pas de boîtes de dialogues en mode console.

Gnagnagna , Et pie d'abord moi je fais se que je veux et si je veux utiliser
des boîtes en mode console, c'est moi que ça regarde !

Y sont fou ses romains

Je plaisante hein
Banana32, merci mon cher
0
cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
23 janv. 2013 à 19:13
Salut Dayvid
Comment y font les gars pour dire que tu est en mode strict ou pas, ou que t'es en mode console ou autre


jusqu'aujourd'hui tu écris en mode console
et aussi
Module Module1

    Sub Main()

donne allusion que tu est sous un console application

peut etre commence un projet windows application
c'est plus interressant qu'une console
0
Utilisateur anonyme
23 janv. 2013 à 19:26
Comment y font les gars pour dire que tu est en mode strict ou pas
Quand on lit une ânerie du style (et que VS laisse passer en mode Strict Off) :
Dim p As Integer = "bla"

On se doute que tu n'as pas activé Strict tu comprends ?
0
cs_dayvid Messages postés 212 Date d'inscription mardi 18 janvier 2011 Statut Membre Dernière intervention 12 février 2013 1
23 janv. 2013 à 20:02
c'est plus interressant qu'une console

Oui, c'est clair ça
Et c'est se que je commence à faire !

Banana32, merci beaucoup pour ton aide !
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
23 janv. 2013 à 20:40
A banana32,
Regarde :
Me faire peur comment ? lui, ce lâche.
Me faire peur comment ? lui, se lâche
Remplace "ce" par "me" dans la 1ère et "se" par "me" dans la seconde.
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0
cs_dayvid Messages postés 212 Date d'inscription mardi 18 janvier 2011 Statut Membre Dernière intervention 12 février 2013 1
23 janv. 2013 à 20:43
Oh !, quel générosité banana32 merci beaucoup de se précieux conseil
0
Utilisateur anonyme
23 janv. 2013 à 21:18
Il y aussi cette astuce :
Toujours se méfier de ce qu'on trouve sur le net.

Merci ucfoutu et bonne nuit
0
cs_dayvid Messages postés 212 Date d'inscription mardi 18 janvier 2011 Statut Membre Dernière intervention 12 février 2013 1
23 janv. 2013 à 21:32
Oui donc en gros c'est du vent, ça marche pas ton truc
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
23 janv. 2013 à 21:45
Oui donc en gros c'est du vent, ça marche pas ton truc

Certainement pas ! vrai sauf de très rares exceptions (et à toi de connaître le contexte ! c'est cela, la langue française) !
Maintenant : si se/ce n'est pas suivi d'un substantif === ce
remplace donc le mot qui suit ce ou se par "machin" et regarde si ça "tient la route". C'est tout bête
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0
Rejoignez-nous