Salve a tutti...
ho creato una form con una PictureBox, 2 Button(Seleziona e Salva) e 1 OpenFileDialog e 1 SaveFileDialog. Il Button "Seleziona" è collegato con l'OpenFileDialog e il Button "Salva" con il SaveFileDialog.
Quando clicco su Seleziona mi si apre la DialogBox, seleziono un'immagine e cliccando su OK essa mi si apre nella PictureBox. Quella poter salvare quella stessa immagine, se clicco su Salva.
Ho scritto del codice (premetto che sono proprio alle prime armi non solo di VB ma anche di programmazione) e mi funzia quasi tutto. Il problema è che se clicco su Salva, si apre la DialogBox, inserisco il nome del file, clicco su salva ma mi salva praticamente un file vuoto.
Il codice che ho scritto:
codice:
Imports System.IO
Public Class Form1
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub PicBox1_Click(sender As System.Object, e As System.EventArgs) Handles PicBox1.Click
End Sub
Private Sub btnLoadImage_Click(sender As System.Object, e As System.EventArgs) Handles btnLoadImg.Click
Dim myStream As Stream
Dim myFile As New OpenFileDialog()
myFile.InitialDirectory = "c:\"
myFile.Filter = "jpg files (*.jpg)|*.png|All files (*.*)|*.*"
myFile.FilterIndex = 2
myFile.RestoreDirectory = True
If myFile.ShowDialog() = DialogResult.OK Then
myStream = myFile.OpenFile()
If Not (myStream Is Nothing) Then
PicBox1.Load(myFile.FileName)
myStream.Close()
End If
End If
End Sub
Private Sub OpenFileDialog1_FileOk(sender As System.Object, e As System.ComponentModel.CancelEventArgs) Handles OpenFileDialog1.FileOk
End Sub
Private Sub btnSaveImg_Click(sender As System.Object, e As System.EventArgs) Handles btnSaveImg.Click
'Visualizzo la Dialog per salvare il file
Dim saveFileDialog1 As New SaveFileDialog()
saveFileDialog1.Filter = "JPeg Image|*.jpg|Bitmap Image|*.bmp|Gif Image|*.gif"
saveFileDialog1.Title = "Save an Image File"
saveFileDialog1.ShowDialog()
' Se il file non è una stringa vuota...
If SaveFileDialog1.FileName <> "" Then
'....salva l'immagine tramite FileStream creato dal metodo OpenFile.
Dim fs As System.IO.FileStream = CType _
(SaveFileDialog1.OpenFile(), System.IO.FileStream)
' Salva l'immagine con il "ImageFormat" basato sul tipo di file presente nella Dialog
Select Case saveFileDialog1.FilterIndex
Case 1
Me.btnSaveImg.Image.Save(fs, _
System.Drawing.Imaging.ImageFormat.Jpeg)
Case 2
Me.btnSaveImg.Image.Save(fs, _
System.Drawing.Imaging.ImageFormat.Bmp)
Case 3
Me.btnSaveImg.Image.Save(fs, _
System.Drawing.Imaging.ImageFormat.Gif)
End Select
fs.Close()
End If
End Sub
End Class
Spero possiate aiutarmi/insegnarmi....