MsgBox a label en Visual Basic

Résolu
luki31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention   -  
 tech_57 -
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

27 réponses

  • 1
  • 2
  1. tech_57
     
    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
  2. luki31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention   2
     
    Je suis sous Visual Basic 2010 express en VB6

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

    Merci :)
    0
  3. Bidouilleu_R Messages postés 1209 Statut Membre 296
     
    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
  4. tech_57
     
    En VB6:

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

    Il y a des exemples.

    ;)
    0
    1. luki31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention   2
       
      Quand je met "open" il me dit "déclaration inattendu" Que dois je faire ?
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. luki31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention   2
     
    Pourriez vous me donné un exemple ?

    Merci
    0
  7. tech_57
     
    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
    1. luki31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention   2
       
      Merci beaucoup mais il me dit que open n'est pas déclarer =s
      0
  8. luki31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention   2
     
    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
  9. Bidouilleu_R Messages postés 1209 Statut Membre 296
     
    est-ce qu'il ne manque pas un

    imports system.io ???
    je suis pas sur...
    0
  10. tech_57
     
    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
  11. luki31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention   2
     
    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
  12. tech_57
     
    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
  13. luki31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention   2
     
    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
  14. tech_57
     
    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
  15. luki31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention   2
     
    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
  16. tech_57
     
    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
  17. tech_57
     
    ça ne marche pas...

    Il y a une erreur ou il ne se passe rien?
    0
  18. luki31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention   2
     
    Il ne se passe rien
    0
  19. tech_57
     
    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
  20. luki31 Messages postés 57 Date d'inscription   Statut Membre Dernière intervention   2
     
    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
  • 1
  • 2