Pregunta: | 2707 - COMO GRABAR LA IMAGEN DE UN PICTURE BOX QUE CONTIENE LABELS |
Autor: | Clemete Sanchez |
Necesito grabar sin verse por pantalla (sin foco y por debajo)un picturebox, el cual contiene varias labels y otro picturebox dentro de él. Cuando utilizo la función SAVEPICTURE, se graba vacío, únicamente el fondo sin los controles ni la otra imagen .No sé si esto es posible(soy novato) o no lo soporta el control picturebox. Uso el Visual basic 5 SP3. Hay alguna otra forma de hacerlo??? Gracias |
Respuesta: | hernan casadesus |
Hola, A ver si entiendo tu problema?? Tenes un objeto picturebox que hace de contenedor de otros objetos, y queres guardar al disco la imagen completa con controles y todo?? Si es asi, esto talvez te sirva. Cuando haces lo que me decis, lo que haces es convertir el pg en un contenedor, y al guardar la imagen al disco, no estas guardando lo que contiene, sino la imagen en si, que no existe. O sea, para poder guardarlo en el disco tenes que crear esa imagen. La mejor forma para hacerlo, seria recorrer uno a uno los controles que se encuentran dentro del pg, extraer sus datos de posicion(left,top, height,width) y copiar su contenido a la imagen del pg de fondo. Para eso tenemos que: en los controles label quedaria algo asi pgfondo.currentx=label.left pgfondo.currenty=label.top set pgfondo.font=label.font pgfondo.print label.caption y para los picterbox pgfondo.PaintPicture pg.Picture, pg.Left, pg.Top Espero te sirva, si no, mandame un mail, y veo que puedo hacer. |