ENREGISTRER PICTUREBOX+TEXTBOX

filotto Messages postés 91 Date d'inscription dimanche 5 janvier 2003 Statut Membre Dernière intervention 21 août 2011 - 24 déc. 2003 à 08:53
filotto Messages postés 91 Date d'inscription dimanche 5 janvier 2003 Statut Membre Dernière intervention 21 août 2011 - 25 déc. 2003 à 21:35
Gérard FILOTTO
Salut,
Sur une form j'ai une picturebox et un textbox,je voudrais savoir comment les enregistrer dans un meme fichier puis les ouvrir depuis ce meme fichier.
Merci de votre reponse.
Cordialement
G.FILOTTO
@+

7 réponses

DDelec24 Messages postés 109 Date d'inscription jeudi 23 octobre 2003 Statut Membre Dernière intervention 23 octobre 2007
24 déc. 2003 à 10:33
Salut, une précision me serait necessaire: Tu veut pouvoir ouvrir ton fichier Hors de ton programme (comme avec word...) ou seulement grace a ton programme? dans ce dernier cas je ne pourrai pas t'aider :( , je n'est pas le niveau.
Précise aussi le format de ton image (jpeg; bmp; gif.??) STP

AigleNoir ?-)
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
24 déc. 2003 à 11:17
Dans le même fichier..... J'ai bien une solution, mais elle est forcément plus longue que si tu utilisait deux fichiers...

ajoutes dans un form :

2 TextBox
2 pictureBoxes, la 1ere avec une image
2 commandButton

Private Sub Command1_Click()
    SaveMixedFile App.Path & "\out", Text1.Text, Picture1.Picture
End Sub

Public Sub SaveMixedFile(ByVal File As String, ByVal Str As String, ByVal Pic As IPictureDisp)
    Screen.MousePointer = vbHourglass
    SavePicture Pic, File & ".tmp.bmp"
    
    Dim CPic As Byte, CMixed As Byte
    CMixed = FreeFile:    Open File For Binary Access Write As CMixed
    CPic = FreeFile:        Open File & ".tmp.bmp" For Binary Access Read As CPic
    
    Put #CMixed, , CDbl(Len(Str))
    Put #CMixed, , Str
    
    Dim Buffer() As String * 1
    ReDim Buffer(FileLen(File & ".tmp.bmp"))
    Get #CPic, , Buffer: Close CPic
    Put #CMixed, , Buffer: Close CMixed

    Kill File & ".tmp.bmp"
    Screen.MousePointer = vbDefault
End Sub

Public Function LoadMixedFile(ByVal File As String, ByRef Str As String) As IPictureDisp
    Screen.MousePointer = vbHourglass
    Dim CPic As Byte, CMixed As Byte
    
    CMixed = FreeFile:    Open File For Binary Access Read As CMixed
    CPic = FreeFile:        Open File & ".tmp.bmp" For Binary Access Write As CPic
    
    Dim ReadBuffer As String * 1
    Dim Length As Double
    Dim Buffer() As String * 1
    Get #CMixed, , Length
    
    Dim i As Double
    Str = vbNullString
    For i = 0 To Length - 1
        Get #CMixed, , ReadBuffer
        Str = Str & ReadBuffer
    Next i
   
    ReDim Buffer(LOF(CMixed) - Seek(CMixed))
    Get #CMixed, , Buffer
    Put #CPic, , Buffer
    
    Close CPic
    Close CMixed
    
    Set LoadMixedFile = LoadPicture(File & ".tmp.bmp")
    Kill File & ".tmp.bmp"
    Screen.MousePointer = vbDefault
End Function

Private Sub Command2_Click()
    Dim Str As String
    Set Picture2.Picture = LoadMixedFile(App.Path & "\out", Str)
    Text2.Text = Str
End Sub


By Renfield

[mailto:thomas_reynald@msn.com thomas_reynald@msn.com]

Aucune touche n'a ete blessee lors de la saisie de ce texte.......... ;)
0
filotto Messages postés 91 Date d'inscription dimanche 5 janvier 2003 Statut Membre Dernière intervention 21 août 2011
24 déc. 2003 à 17:57
Gérard FILOTTO
Salut,
Merci pour ta reponse.
Et avec 2 textbox?
@+
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
24 déc. 2003 à 21:29
Le même genre de choses, peu de choses a modifier

mais cette procédure ralentit considerablement la sauvegarde....

ne pourrais tu enregistrer les chaines dans un fichier, et tes images separement ? tu pourrais au pire placer ca dans un repertoire séparé..??

By Renfield

[mailto:thomas_reynald@msn.com thomas_reynald@msn.com]

Aucune touche n'a ete blessee lors de la saisie de ce texte.......... ;)
0

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

Posez votre question
filotto Messages postés 91 Date d'inscription dimanche 5 janvier 2003 Statut Membre Dernière intervention 21 août 2011
25 déc. 2003 à 09:16
Gérard FILOTTO
Salut,
Peut tu me donner les choses à modifier
Joyeux Noel
@+
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
25 déc. 2003 à 20:33
Ca fais plaisir de voir que tu cherche a comprendre la fonction et son fonctionnement !!!!

les modifications apportées sont cependant dérisoires !!

Private Sub Command1_Click()
SaveMixedFile App.Path & "\out", Text1.Text, Text2.Text , Picture1.Picture
End Sub

Public Sub SaveMixedFile(ByVal File As String, ByVal Str1 As String, byval Str2 as String , ByVal Pic As IPictureDisp)
Screen.MousePointer = vbHourglass
SavePicture Pic, File & ".tmp.bmp"

Dim CPic As Byte, CMixed As Byte
CMixed = FreeFile: Open File For Binary Access Write As CMixed
CPic = FreeFile: Open File & ".tmp.bmp" For Binary Access Read As CPic

Put #CMixed, , CDbl(Len(Str1))
Put #CMixed, , Str1
Put #CMixed, , CDbl(Len(Str2))
Put #CMixed, , Str2

Dim Buffer() As String * 1
ReDim Buffer(FileLen(File & ".tmp.bmp"))
Get #CPic, , Buffer: Close CPic
Put #CMixed, , Buffer: Close CMixed

Kill File & ".tmp.bmp"
Screen.MousePointer = vbDefault
End Sub

Public Function LoadMixedFile(ByVal File As String, ByRef Str1 As String, Byref Str2 as string) As IPictureDisp
Screen.MousePointer = vbHourglass
Dim CPic As Byte, CMixed As Byte

CMixed = FreeFile: Open File For Binary Access Read As CMixed
CPic = FreeFile: Open File & ".tmp.bmp" For Binary Access Write As CPic

Dim ReadBuffer As String * 1
Dim Length As Double
Dim Buffer() As String * 1
Get #CMixed, , Length

Dim i As Double
Str1 = vbNullString
For i = 0 To Length - 1
Get #CMixed, , ReadBuffer
Str1 = Str1 & ReadBuffer
Next i

Get #CMixed, , Length
Str2 = vbNullString
For i = 0 To Length - 1
Get #CMixed, , ReadBuffer
Str2 = Str2 & ReadBuffer
Next i

ReDim Buffer(LOF(CMixed) - Seek(CMixed))
Get #CMixed, , Buffer
Put #CPic, , Buffer

Close CPic
Close CMixed

Set LoadMixedFile = LoadPicture(File & ".tmp.bmp")
Kill File & ".tmp.bmp"
Screen.MousePointer = vbDefault
End Function

Private Sub Command2_Click()
Dim Str1 As String , Str2 as String
Set Picture2.Picture = LoadMixedFile(App.Path & "\out", Str1 , Str2)
Text3.Text = Str1
Text4.Text = Str2
End Sub


By Renfield

[mailto:thomas_reynald@msn.com thomas_reynald@msn.com]

Aucune touche n'a ete blessee lors de la saisie de ce texte.......... ;)
0
filotto Messages postés 91 Date d'inscription dimanche 5 janvier 2003 Statut Membre Dernière intervention 21 août 2011
25 déc. 2003 à 21:35
Gérard FILOTTO
Bonsoir,
Je te remercie beaucoup pour ton aide.
Bonne fete de fin d'années.
Cordialement.
G.FILOTTO
@+
0
Rejoignez-nous