2014-02-04 3 views
0

Я очень новичок в Visual Basic, поэтому, пожалуйста, будьте нежны. : PПозвольте пользователю загрузить изображение в Visual Basic

Я создаю небольшое приложение для базовых учебных целей, которое позволит пользователю приложения обновлять профиль. Сюда входит загрузка изображения профиля, которое затем сохраняется в/bin/Debug/Resource, а затем отображается в их профиле в PictureBox.

Я использую следующий код, который, кажется, делает именно это. Однако, когда я закрываю приложение и запускаю его снова, изображение не отображается ни на PictureBox, но сохраняется в указанной папке.

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click 

    If (Not System.IO.Directory.Exists("Resource")) Then 
     System.IO.Directory.CreateDirectory("Resource") 
    End If 


    Dim OpenFileDialog1 As New OpenFileDialog 
    With OpenFileDialog1 
     .CheckFileExists = True 
     .ShowReadOnly = False 
     .Filter = "All Files|*.*|Bitmap Files (*)|*.bmp;*.gif;*.jpg" 
     .FilterIndex = 2 

     ' 
     If .ShowDialog = DialogResult.OK Then 
      Dim FName() As String = OpenFileDialog1.FileName.Split("\\") 
      System.IO.File.Copy(OpenFileDialog1.FileName, "Resource\\" + FName(FName.Length - 1)) 
      PictureBox1.Image = Image.FromFile(.FileName) 
      Profile.PictureBox1.Image = Image.FromFile(.FileName) 
     End If 
    End With 
End Sub   

Любая помощь, которую вы можете предоставить, очень ценится.

спасибо.

+0

Чтобы загрузить изображение в поле, вам необходимо использовать LoadPicture. imgMyPic.Picture = LoadPicture ("C: \ SomeDirectory \ SomeSubDir \ MyPic.bmp") – abhi

+0

Я пробовал: imgMyPic.Picture = LoadPicture ("C: \ SomeDirectory \ SomeSubDir \ MyPic.bmp") Но это показывает следующие ошибки: Картинка не является членом System.Windows.Form.PictureBox ' LoadPicture не объявлен. Он может быть недоступен из-за его уровня защиты ' – Danno

+0

Изображение не сохраняется (или перезагружается) автоматически, поэтому вам придется перезагружать изображение (из файла) снова при загрузке формы. – Grimthorr

ответ

0

Это то, что вам нужно сделать, чтобы отобразить изображение.

Этот код необходимо добавить к методу Load form.

Dim StoredPath As String = "PathToImage" 
IF File.Exists(StoredPath) Then 
    PictureBox1.Image = Image.FromFile(@StoredPath) 
    PictureBox1.Refresh() 
End if 
+0

Привет, abhi, Извините, но это не сработало. – Danno

+0

Что вы получаете в OpenFileDialog1.FileName? Я создал [sscce] (http://www.sscce.org/) – abhi

+0

Я не получаю ничего другого. Отображает изображение, но когда я закрываю приложение и снова его открываю, изображение исчезает. – Danno

Смежные вопросы