https://foro.gambas-es.org/viewtopic.php?f=3&t=7157&p=43147#p43147
-----------------------------------
imagomundi
Viernes, 21 Septiembre 2018, 15:36

Re: Ver Imagen En Picturebox
-----------------------------------
Siguiendo el consejo de Tincho, actualicé el código a esto

Las imagenes se guardan en una carpeta IMG y guardo el nombre del archivo en un campo con este código

[code linenumbers=false syntax=gambas]
Public Sub btnSUBIRFOTO_Click()

 'ME CONCETO A LA BD
  cx = Mconex.conectar()
  cx.Begin
  'UTILIZO EDIT PORQUE EL REGISTRO YA ESTÁ CREADO
  rs = cx.Edit("Pers_Fisicas", "ID_PERSFISICA=&1", id)
  
  ' PONGO UNA RUTA FIJA DONDE GUARDO LAS IMAGENES
  Dialog.Path = "/home/alberto/BODEGA/IMG/"
  'SOLO ACEPTO IMAGENE PNG
  Dialog.Filter = ["*.png", "Picture files"]
 
  If Dialog.OpenFile() Then Return

  Select Case File.Ext(Dialog.Path)
    Case "png"
    Case Else
      Message.Error("Formato de imagen no válido!")
      Return
  End Select

  rs["NOMBREFOTO"] = File.Name(Dialog.Path)

  rs.Update
  cx.Commit
  Mconex.desconectar(cx)
   
  id = 0
  llenarGrid
  
   End
[/code]

Puse un label donde mostrar el nombre del archivo (y me sirve para confirmar que funciona) y anda bien.

Como necesito hacer un refresco en el picturebox cada vez que pincho en una de las celdas del grid, hice este código

[code linenumbers=false syntax=gambas]
Public Sub picIMAGEN_GotFocus()
Dim a As String

a = txtNombreDELAfoto.Text
picIMAGEN.Picture = Picture.Load(a)
'ESTE TRUCO SE LE LEI A BENOIT EN UN FORO YA QUE PICTUREBOX NO ACTUALIZA SU CACHE
Picture[a] = Picture.Load(a)
picIMAGEN.Picture = Picture[a] 

End
[/code]

No entiendo que no anda bien, lo que consigo es que levante la primera imagen (el primer click al grid) pero no refresca la imagen en el picturebox, aunque el label si me muestra el dato refrescado.

Sls


