AnteManoclis
Messages postés154Date d'inscriptionjeudi 22 mai 2003StatutMembreDernière intervention 6 septembre 2007 20 déc. 2005 à 18:33
Salut, alors il te faut créer un formulaire windows qui va te servir de
base pour ta messagebox. Sur ce formulaire, tu places un label (pour
afficher le texte du message), et puis tes deux boutons oui / non. Dans
le code de ton formulaire tu places le code suivant:
Private Reponse As MsgBoxResult
Public Function MessageBoxOuiNon(ByVal Message As String, ByVal Titre As String) As MsgBoxResult
Me.Label1.Text = Message
Me.Text = Titre
Me.Show()
Reponse = MsgBoxResult.Abort
Do Until Reponse <> MsgBoxResult.Abort
Application.DoEvents()
Loop
Return Reponse
End Function
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Reponse = MsgBoxResult.Yes
End Sub
Private Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click
Reponse = MsgBoxResult.No
End Sub
Dans un module, tu places la ligne suivante:
Dim FormOuiNon As New Form1
Et lorsque tu veux appeler ta MessageBox tu fais:
TaVariable = FormOuiNon.MessageBoxOuiNon("Message à afficher", "Titre du message")
Avec TaVariable, contenant le même résultat que si tu avais utilisé une MessageBox normale.
Si tu n'y arrives pas je peux toujours t'envoyer le projet.
AnteManoclis
Messages postés154Date d'inscriptionjeudi 22 mai 2003StatutMembreDernière intervention 6 septembre 2007 19 déc. 2005 à 18:36
Salut, j'ai pas ce problème chez moi, maintenant, peut-être que ton
windows est configuré en anglais ou peut-être est-ce vb qui l'est...
(outils\options\paramètres internationaux)
sinon, tu peux toujours créer un formulaire avec deux boutons que tu nomeras oui et non...
AnteManoclis
Messages postés154Date d'inscriptionjeudi 22 mai 2003StatutMembreDernière intervention 6 septembre 2007 30 déc. 2009 à 18:29
Salut,
Les labels ne gèrent pas les styles différents dans le même texte, en revanche les RichTextBox oui. Il faudrait alors que tu remplaces le Label1 par un RichTextBox (il te faudra modifier un peu le style du contrôle si tu veux qu'il apparaisse sans bordure, transparent et non inscriptible comme le Label).
cs_chiffre
Messages postés40Date d'inscriptionvendredi 7 mars 2003StatutMembreDernière intervention 9 février 2013 16 janv. 2010 à 16:15
Bonjour...je remerci ceux qui mon donné des idées
Voici ce que j'ai fait,mais il me reste a trouver comment écrire le code pour si le bouton Oui,il agrandi mon frm pour me permettre de écrire Oui pour supprimer..
N'oubliez pas que je suis que débutant
Voici mon code
Public Class frmDialogMessageBox
Dim txt As Object
Private Sub frmDialogMessageBox_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
jylacroix
Messages postés2Date d'inscriptionjeudi 7 janvier 2010StatutMembreDernière intervention18 janvier 2010 18 janv. 2010 à 13:57
Merci AnteManoclis, j'avais effectivement fait une erreur en donnant à Form1 un autre nom. Le problème venait de là. Et donc maintenant je plante plus loin :
Private Sub UserForm_Click()
Private Reponse As MsgBoxResult
Public Function MessageBoxOuiNon(ByVal Message As String, ByVal Titre As String) As MsgBoxResult
Me.Label1.Text = Message
Me.Text = Titre
Me.Show()
J'ai le même type d'erreur, mais c'est la ligne "Public Function MessageBoxOuiNon(ByVal .."
qui est en surbrillance.
Il s'agit du code de Form1.
Merci de ton aide.
La création relève de l'idèe, l'innovation de l'action !
AnteManoclis
Messages postés154Date d'inscriptionjeudi 22 mai 2003StatutMembreDernière intervention 6 septembre 2007 18 janv. 2010 à 21:50
Je pense que le problème vient du fait que tu déclares ta fonction "MessageBoxOuiNon" alors que ta procédure "UserForm_Click" n'est pas terminée par un "End Sub" et en VB, il est impossible de déclarer une fonction à l'intérieur d'une procédure.