https://foro.gambas-es.org/viewtopic.php?f=1&t=114&p=410#p410
-----------------------------------
CanihoJR
Viernes, 09 Octobre 2009, 15:28

Como Puedo Guardar Una Imagen De Un Articulo?
-----------------------------------
Bueno, todos estaremos deacuerdo que muchas veces lo mas dificil es "tener la idea" que normalmente es mas facil que te digan, hazme un programa que le pases 2 numeros y te devuelva la ecuacion astrotopica de ambos y enseñame el resultado, o cosas por el estilo,...

El caso es que como muchos sabeis estoy desarrollando una aplicacion para la gestion de mi comercio, y ando liado con la inserccion de articulos.  Este es mi formulario de ingreso de articulos:

[img align=left]http://img34.imageshack.us/img34/4320/pantallazonuevoarticulo.png[/img]

Despues de un par de posts con vosotros, conseguimos arreglar lo del picturebox para que cojiese la imagen con el dialogo... Ahora estoy atascado con guardar estos datos. Por un lado porque estoy tratando de hacerlo desde el codigo gambas, para evitar enlazar mi codigo a un motor de base de datos concreto, como recomendais por algun que otro post.

El caso esque como solucion se me ocurrió guardar un String con la ruta donde está la imagen, cargar la imagen, y guardarla en el Settings.Path.

Bueno, el caso es que funcionar funciona, pero como siempre, busco o una segunda opinion, o alguna otra idea por parte de vosotros que contais con mas experiencia que yo en programacion o algun camino alternativo ;), barajé tambien la posibilidad de guardar la imagen en la base de datos,pero creo que esto cargaria demasiado la base de datos inecesariamente... alguna alternativa?

Gracias!

PD: copio el codigo actual, por si quereis comentar cualquier tema :)
[code linenumbers=true syntax=gambas]PUBLIC SUB Form_Open()
  ME.Center
END

PUBLIC SUB Button1_Click()
  'creo variable
  DIM RutaImagen AS String

  'doy propiedades a la ventana:
  Dialog.Title = "Selecciona una imagen."
  Dialog.Filter = ["*.png;*.jpg;*.jpeg;*.bmp", "Imagenes", "*.*", "Todos los ficheros"] 
  Dialog.Path = User.Home
  'propiedad Stretch del picture box en true para ajustar la imagen al cuadrao.
  IF Dialog.openfile() THEN RETURN 
  'cojo el archivo seleccionado y lo pongo en el picturebox
  RutaImagen = Dialog.Path
  PBimagen.Picture = Picture[RutaImagen]

END


PUBLIC SUB Button3_Click()
  'creo variables
  DIM resultado AS Result
  DIM imgtemporal AS Picture

  'me conecto a la base de datos
  MConexion.Connect()

  'copio la imagen en la carpeta del programa dentro de ~/.config/gambas/LNAGestion
  imgtemporal = PBimagen.Picture
  imgtemporal.Save(Settings.Path & "/nose.png")
END[/code]

Ahhh, me olvidaba, tampoco sé como generar un nombre aleatorio de la imagen :( siempre las guardo como nose.png una encima de otra..... :/


