• Lunes 23 de Diciembre de 2024, 19:22

Autor Tema:  Desaparecer Picturebox  (Leído 1662 veces)

Sagma

  • Miembro MUY activo
  • ***
  • Mensajes: 390
  • Nacionalidad: bo
    • Ver Perfil
Desaparecer Picturebox
« en: Sábado 29 de Septiembre de 2007, 15:14 »
0
hola a todos, he realizado una aplicación que cuando digito el código de la persona, este me despliega los datos de dicha persona y también pongo su foto, esto en un picturebox. todo ok.  :P

Pero ...

cuando quiero ver otro dato de otra persona y su imagen, solo me despliega los datos y no asi la imagen o la foto.

me puse un boton cancelar, pero aun asi no se borra la imagen.

he usado el codigo siguiente.
Código: Text
  1. me.picturebox1.imagen = nothing
  2.  
de lo cual no se pierde la imagen, me lo sigue mostrando aunque este con otros datos.  :(


he tambien puesto el codigo:
Código: Text
  1. me.picturebox1.dispose
  2.  
en este caso me lo hace perder, pero, ya tambien no me muestra nada de nadita de lo que es las fotos o imagenes de las persona.  :blink:

gracias por su colaboración.  :comp:
Sagma

Scherzo

  • Miembro activo
  • **
  • Mensajes: 64
    • Ver Perfil
    • http://www.mma-spain.com
Re: Desaparecer Picturebox
« Respuesta #1 en: Lunes 1 de Octubre de 2007, 17:42 »
0
Hola, en teoría cuando haces un

Código: Text
  1.  
  2. oPictureBox.Image = Nothing
  3.  
  4.  

Debería limpiarte la imagen, prueba a añadir después un

Código: Text
  1.  
  2. oPictureBox.Refresh()
  3.  
  4.  

Por si acaso no te la estuviera refrescando.

En las pruebas que he hecho, con esto que te digo funciona sin problemas.

Y si quieres cambiar a otra imagen, con un

Código: Text
  1.  
  2. oPictureBox.Load("C:\\ruta\\de\\la\\imagen\\imagen.jpg")
  3.  
  4.  

La cargarías sin problemas.

Si no te funciona, pega el código si quieres, por si fuera otro el motivo por el que te está dando problemas y a lo mejor viéndolo lo detectamos.

Saludos

Sagma

  • Miembro MUY activo
  • ***
  • Mensajes: 390
  • Nacionalidad: bo
    • Ver Perfil
Re: Desaparecer Picturebox
« Respuesta #2 en: Martes 2 de Octubre de 2007, 17:22 »
0
gracias por contestar, pero sigue todo igual.

fijate, con este código levanto los datos y a la vez llamo la imagen:

Código: Text
  1.  
  2.     Private Sub txt_codigo_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles txt_codigo.Leave
  3.  
  4.         If IsNumeric(Me.txt_codigo.Text) Then
  5.             If Pint.existe(CInt(Me.txt_codigo.Text)) Then
  6.                 Pint.datos(CInt(Me.txt_codigo.Text))
  7.  
  8.                 Me.txt_codigo.Text = Pint.CodigoPintor
  9.                 Me.cmb_mesa.SelectedValue = Pint.CodMesa
  10.                 Me.cmb_asiste.SelectedValue = Pint.Asistio
  11.                 Me.DateTimePicker1.Value = Pint.Fecha_Nac
  12.                 Me.txt_nombre.Text = Pint.Nombre
  13.                 Me.txt_direccion.Text = Pint.Direccion
  14.                 Me.txt_quien.Text = Pint.Representa
  15.                 Me.txt_telefono.Text = Pint.Telefono
  16.                 Me.txt_celular.Text = Pint.Celular
  17.                 Me.txt_cedula.Text = Pint.Cedula_Iden
  18.                 Me.cmd_ciudadci.SelectedValue = Pint.Lugar_Cedula
  19.                 Me.cmb_anfitrion.SelectedValue = Pint.CodAnfitrion
  20.  
  21.                 ShowFilesInFolder()
  22.                 Me.btn_aceptar.Enabled = False
  23.                 Me.btn_modificar.Enabled = True
  24.  
  25.             End If
  26.         End If
  27.  
  28.     End Sub
  29.  
  30.  

y con este código despliego o muestro la imagen:

Código: Text
  1.  
  2.     Private Sub ShowFilesInFolder()
  3.         Dim file As String
  4.         Dim FI As FileInfo
  5.         Dim PBox As PictureBox, Img As Image
  6.         Dim Left As Integer = ThumbnailPadding
  7.         Dim Top As Integer = ThumbnailPadding
  8.         Dim ThispBox As Control
  9.         Dim ThumbWidth As Integer = 90   ''antes era 90
  10.         Dim ThumbHeight As Integer = 120 ''antes era 120
  11.  
  12.         If PictureBox1.Controls.Count > 0 Then Exit Sub
  13.  
  14.         Me.Invalidate()
  15.  
  16.         'For Each file In Directory.GetFiles(DirListBox1.Path)
  17.         Try
  18.             FI = New FileInfo("c:\sagmasoft\fotos\pintores\" + CStr(Pint.CodigoPintor) + ".jpg")
  19.         Catch err As Exception
  20.             FI = New FileInfo("c:\sagmasoft\fotos\pintores\555.png")
  21.         End Try
  22.  
  23.         If FI.Extension = ".gif" Or FI.Extension = ".jpg" Or _
  24.                     FI.Extension = ".bmp" Then
  25.             PBox = New PictureBox
  26.             'PBox.BorderStyle = BorderStyle.FixedSingle
  27.             PBox.SizeMode = PictureBoxSizeMode.CenterImage
  28.  
  29.             If FI.Extension <> ".cdr" Then
  30.                 Try
  31.                     Img = Image.FromFile(FI.FullName)
  32.                 Catch err As Exception
  33.                     Img = Image.FromFile("c:\sagmasoft\fotos\pintores\555.png")
  34.                 End Try
  35.             End If
  36.  
  37.             If Left > PictureBox1.Width - PictureBox1.Left + ThumbnailPadding + ThumbWidth Then
  38.                 Left = ThumbnailPadding
  39.                 Top = Top + 10  '' antes era 80, ubicacion de la parte de arriba
  40.  
  41.             End If
  42.             With PBox
  43.                 .Left = Left
  44.                 .Top = Top
  45.                 .Width = 120 'Ubicacion del ancho hacia la derecha de la foto
  46.                 .Height = 120 'Ubicacion de la foto en la parte superior TOP
  47.                 .Image = CalculateThumbnailSize(Img, PBox.Width, PBox.Height)
  48.                 .Visible = True
  49.                 .Tag = FI.FullName
  50.                 PictureBox1.Controls.Add(PBox)
  51.                 AddHandler PBox.Click, New System.EventHandler(AddressOf OpenImage)
  52.                 Left = Left + 124    '' antes era 74
  53.             End With
  54.  
  55.         End If
  56.  
  57.     End Sub
  58.  
  59.  


 :comp:
Sagma