MsgBox a label en Visual Basic

Résolu/Fermé
luki31 Messages postés 68 Date d'inscription mardi 22 février 2011 Statut Membre Dernière intervention 14 mai 2011 - 2 mars 2011 à 13:42
 tech_57 - 3 mars 2011 à 15:25
Bonjour,

J'ai réussi a écrire d'une message box a un label mais le problème est que quand je ferme mon application et que je la relance il n'enregistre pas ce que j'ai écrit donc le texte revient au premier

Comment faire pour que le texte que j'ai écrit dans msgbox remplace définitivement le texte qui dans le label ???

Aidez moi svp !

Merci


A voir également:

27 réponses

Bonjour,

Tu dois stocker l'information dans un fichier, une cellule (si c'est du VBA Excel), un registre..., bref n'inporte où sauf dans le code du prog.
A chaque demarrage, aller chercher l'info la où elle se trouve.
Evidemment si c'est un mot de passe, il vaudrait mieux le crypter avant de l'enregistrer.

;)
0
luki31 Messages postés 68 Date d'inscription mardi 22 février 2011 Statut Membre Dernière intervention 14 mai 2011 2
Modifié par luki31 le 2/03/2011 à 14:00
Je suis sous Visual Basic 2010 express en VB6

Comment je fais pour stocker l'information dans un fichier ?

Merci :)
0
Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 293
2 mars 2011 à 14:12
tu crées un fichier tout simple voir la commande open

et tu prévois un bout de code pour lire le fichier quand tu lances ton programme
0
En VB6:

Voir dans l'aide comment utiliser les instructions open, print #, input #

Il y a des exemples.

;)
0
luki31 Messages postés 68 Date d'inscription mardi 22 février 2011 Statut Membre Dernière intervention 14 mai 2011 2
2 mars 2011 à 14:28
Quand je met "open" il me dit "déclaration inattendu" Que dois je faire ?
0

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

Posez votre question
luki31 Messages postés 68 Date d'inscription mardi 22 février 2011 Statut Membre Dernière intervention 14 mai 2011 2
Modifié par luki31 le 2/03/2011 à 14:20
Pourriez vous me donné un exemple ?

Merci
0
Si tu ne pas le nez dans l'aide, tu n'arriveras pas à finir ton prog.
Je te donne un exemple très simple, après ce sera à toi de poursuivre.

'pour enregistrer le texte
Sub CreateTextFile()
Dim VarTxt As String

VarTxt = "My_Password"
'tu peux aussi mettre
'VarTxt = Label6.Caption
'ou encore
'VarTxt = TextBox5.Text
'suivant l'origine te ton texte

Open "C:\MonFichier.txt" For Output As #1
'remplace "C:\MonFichier.txt" par le chemin et le nom complet du fichier à créer
'sois très prudent car si le fichier existe déjà il sera écrasé

Print #1, VarTxt
Close

End Sub



'pour récupérer le texte
Sub ReadTextFile()
Dim VarTxt As String

Open "C:\MonFichier.txt" For Input As #1
'remplace "C:\MonFichier.txt" par le chemin et le nom complet du fichier à lire

Input #1, VarTxt
Close

MsgBox "Mot de Passe = " & VarTxt
'tu peux aussi mettre
'Label6.Caption = VarTxt
'ou encore
'TextBox1.Text = VarTxt
'suivant l'endroit ou tu veux l'afficher

End Sub
0
luki31 Messages postés 68 Date d'inscription mardi 22 février 2011 Statut Membre Dernière intervention 14 mai 2011 2
2 mars 2011 à 15:20
Merci beaucoup mais il me dit que open n'est pas déclarer =s
0
Montre ce que tu as fait, stp.
0
luki31 Messages postés 68 Date d'inscription mardi 22 février 2011 Statut Membre Dernière intervention 14 mai 2011 2
2 mars 2011 à 15:36
Public Class Form1

    Sub CreateTextFile()
        Dim VarTxt As String

        VarTxt = "My_Password"

Open "D:\Documents and Settings\home\Mes documents\Mes programes\text.txt" For Output As #1

Print #1, VarTxt
        Close()

    End Sub
End Class
0
Bidouilleu_R Messages postés 1181 Date d'inscription mardi 27 mai 2008 Statut Membre Dernière intervention 12 juillet 2012 293
2 mars 2011 à 15:40
est-ce qu'il ne manque pas un

imports system.io ???
je suis pas sur...
0
Il ne faut pas mettre la sub CreateTextFile() dans Class Form1
Il faut mettre cette procédure directement dans le code de Form1 qui contient les controles à atteindre.

Enlève Public Class Form1 et End Class
0
luki31 Messages postés 68 Date d'inscription mardi 22 février 2011 Statut Membre Dernière intervention 14 mai 2011 2
2 mars 2011 à 15:53
Je suis confu ! voila mon VB:
Public Class Form2
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If verification() Then
            Form3.Show()
        Else
            Form4.Show()

        End If
    End Sub
    Function verification() As Boolean
        Dim accepter As Boolean = True
        If TextBox1.Text = Label6.Text Then
            Label6.Hide()
        Else
            Label7.Show()
        End If

        If TextBox2.Text = TextBox4.Text Then
            Form1.MaskedTextBox1.Text = Me.TextBox2.Text
            Form3.Show()
        Else
            Label8.Show()
            Label9.Show()

        End If


    End Function

End Class


Et je sais pas ou mettre
Sub CreateTextFile()
        Dim VarTxt As String

        VarTxt = "My_Password"

Open "D:\Documents and Settings\home\Mes documents\Mes programes\text.txt" For Output As #1

Print #1, VarTxt
        Close()

    End Sub
End Class
0
Effectivement, ça ne marche pas parce que c'est du VB.NET et moi je te parle de VB6, c'est légèrement différent
'-------------------------
Sub CreateTextFile()
Dim VarTxt As String

VarTxt = "My_Password"

FileOpen( 1, "D:\Documents and Settings\home\Mes documents\Mes programes\text.txt", OpenMode.Output)

Print(1,VarTxt)

FileClose (1)

End Sub
'-----------------------

Voilà, c'est mieux si on parle la même langue.
0
luki31 Messages postés 68 Date d'inscription mardi 22 février 2011 Statut Membre Dernière intervention 14 mai 2011 2
2 mars 2011 à 19:05
Merci énormément :) Pourrez vous juste encore me dire comment envoyer un text a ce fichier text.txt et comment le récupéré ?


Merci encore
0
Bonsoir,

Alors pour envoyer un texte dans ce fichier, on vient de le voir.
La procédure Sub CreateTextFile() écrit la valeur de la variable VartTxt dans le fichier.
Admettons que tu veuilles ecrire le contenu de Form1.MaskedTextBox1, remplaces alors la ligne
VarTxt = "My_Password"

par
VarTxt = Form1.MaskedTextBox1.Text

Pour vérifier, aprés exécution ouvre le fichier text.txt avec Bloc Note. Tu devrais y trouver le contenu de Form1.MaskedTextBox1

Quand tu auras avancé jusque là, on verra comment récuperer ce texte

;)
0
luki31 Messages postés 68 Date d'inscription mardi 22 février 2011 Statut Membre Dernière intervention 14 mai 2011 2
2 mars 2011 à 22:35
MERCI ! J'ai enfin réussi a écrire dans un fichier !!!

Maintenant reste a lire ce fichier pour que le mot de passe soit celui qui dans le fichier texte.

Encore une fois !
0
Bon, maintenant récupérer le contenu du fichier
voici la procédure:

'----------------------
Sub ReadTextFile()
Dim VarTxt As String

FileOpen( 1, "D:\Documents and Settings\home\Mes documents\Mes programes\text.txt", OpenMode.Input)

VarTxt = LineInput(1)
FileClose(1)

MsgBox "Mot de Passe = " & VarTxt

End Sub
'------------------------

Si tu exécutes cette procédure, tu devrais voir dans la MsgBox le contenu du fichier text.txt

Remplaces la ligne
MsgBox "Mot de Passe = " & VarTxt

par
Me.TextBox2.Text = VarTxt

pour mettre le texte dans TextBox2 par exemple

;)
0
ça ne marche pas...

Il y a une erreur ou il ne se passe rien?
0
luki31 Messages postés 68 Date d'inscription mardi 22 février 2011 Statut Membre Dernière intervention 14 mai 2011 2
3 mars 2011 à 13:32
Il ne se passe rien
0
Il ne se passe rien parce la procédure n'est pas exécutée.

Il faut provoquer un évènement qui va exécuter la procédure: par exemple, au moment de l'ouverture de Form1, ou le clic sur un bouton ....

Il faut voir à quel moment du prog on a besoin le l'info.

;)
0
luki31 Messages postés 68 Date d'inscription mardi 22 février 2011 Statut Membre Dernière intervention 14 mai 2011 2
3 mars 2011 à 14:16
Pourtant j'ai mit:
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim VarTxt As String

        FileOpen(1, "D:\Documents and Settings\home\Mes documents\Mes programes\text.txt", OpenMode.Input)

        VarTxt = LineInput(1)
        FileClose(1)

        Me.Label3.Text = VarTxt

    End Sub
0