• Sábado 4 de Mayo de 2024, 09:32

Autor Tema:  Como se imprime un PictureBox111?  (Leído 4055 veces)

Jimbenit

  • Miembro MUY activo
  • ***
  • Mensajes: 269
  • Nacionalidad: co
    • Ver Perfil
    • http://ingenieriacivil.foroactivo.com
Como se imprime un PictureBox111?
« en: Miércoles 17 de Septiembre de 2008, 18:53 »
0
Hola a todos...

:mellow: Bueno... mi duda es la siguienete, estoy haciendo un grafico con el metodo LINE de VB6 en un Picture, pues la duda es: Como puedo mandar a imprimir el contenido de este PictureBox?


Cualquier sugerencia sera bien recibida...

Saludos.
« última modificación: Martes 23 de Septiembre de 2008, 18:18 por Jimbenit »


Yo quiero mucho a Toph ---> Mi Web]http://ingenieriacivil.foroactivo.com[/url]

Jimbenit

  • Miembro MUY activo
  • ***
  • Mensajes: 269
  • Nacionalidad: co
    • Ver Perfil
    • http://ingenieriacivil.foroactivo.com
Re: Como se imprime un PictureBox?
« Respuesta #1 en: Miércoles 17 de Septiembre de 2008, 20:50 »
0
Bueno, aun no doy con la solución pero se me ocurrió una idea, que me ayuda por el momento y es esta:


Colocar mi picture en un formulario vacio, el picture debe ocupar todo el tamaño de ese formulario (este formulario no es visible para el usuario), y luego utilizar:

Código: Text
  1. Formulario.PrintForm
  2.  

Pero si alguien sabe como imprimir un picture sin usar lo que yo use, me seria de gran ayuda


Yo quiero mucho a Toph ---> Mi Web]http://ingenieriacivil.foroactivo.com[/url]

RadicalEd

  • Moderador
  • ******
  • Mensajes: 2430
  • Nacionalidad: co
    • Ver Perfil
Re: Como se imprime un PictureBox?
« Respuesta #2 en: Miércoles 17 de Septiembre de 2008, 22:01 »
0
El pasado son solo recuerdos, el futuro son solo sueños

Jimbenit

  • Miembro MUY activo
  • ***
  • Mensajes: 269
  • Nacionalidad: co
    • Ver Perfil
    • http://ingenieriacivil.foroactivo.com
Re: Como se imprime un PictureBox?
« Respuesta #3 en: Miércoles 17 de Septiembre de 2008, 22:45 »
0
Y una ultima...
Como dibujar en otro picture (por ejemplo Picture2) lo que esta en un picture Diferente (por ejemplo Picture1)... estoy usando metodos graficos (Lineas, puntos, circulos, rectangulos... etc.)?


Gracias... :good:


Yo quiero mucho a Toph ---> Mi Web]http://ingenieriacivil.foroactivo.com[/url]

Jimbenit

  • Miembro MUY activo
  • ***
  • Mensajes: 269
  • Nacionalidad: co
    • Ver Perfil
    • http://ingenieriacivil.foroactivo.com
Re: Como se imprime un PictureBox?
« Respuesta #4 en: Miércoles 17 de Septiembre de 2008, 23:06 »
0
Citar
Edo:

Printer.PaintPicture
http://www.vb-helper.com/howto_print_picture_large.html

Edo, mira... el codigo de esa pagina (VBHelper) solo imprime el picture en caso de que sea una imagen cargada (es decir, un dibujo cargado en el picture como GIf, BMP, JPEG, etc..) pero ocasiona un error al imprimir un picture (que no tenga imagen como BMP, GIF, etc) y que solo tenga dibujos por metodos graficos.


Yo quiero mucho a Toph ---> Mi Web]http://ingenieriacivil.foroactivo.com[/url]

Nebire

  • Miembro HIPER activo
  • ****
  • Mensajes: 670
    • Ver Perfil
Re: Como se imprime un PictureBox?
« Respuesta #5 en: Viernes 19 de Septiembre de 2008, 01:41 »
0
Cita de: "Nilson Yair"
Y una ultima...
Como dibujar en otro picture (por ejemplo Picture2) lo que esta en un picture Diferente (por ejemplo Picture1)... estoy usando metodos graficos (Lineas, puntos, circulos, rectangulos... etc.)?


Gracias... :good:

picture2.picture=picture1.image

Cita de: "Nilson Yair"
Edo, mira... el codigo de esa pagina (VBHelper) solo imprime el picture en caso de que sea una imagen cargada (es decir, un dibujo cargado en el picture como GIf, BMP, JPEG, etc..) pero ocasiona un error al imprimir un picture (que no tenga imagen como BMP, GIF, etc) y que solo tenga dibujos por metodos graficos.
Citar
Edo:

Printer.PaintPicture
http://www.vb-helper.com/howto_print_picture_large.html

Edo, mira... el codigo de esa pagina (VBHelper) solo imprime el picture en caso de que sea una imagen cargada (es decir, un dibujo cargado en el picture como GIf, BMP, JPEG, etc..) pero ocasiona un error al imprimir un picture (que no tenga imagen como BMP, GIF, etc) y que solo tenga dibujos por metodos graficos.

if picture1.picture=0 then picture1.picture=picture1.image
«Ma non troppo»
----> ModoVacaciones = False<----

Jimbenit

  • Miembro MUY activo
  • ***
  • Mensajes: 269
  • Nacionalidad: co
    • Ver Perfil
    • http://ingenieriacivil.foroactivo.com
Re: Como se imprime un PictureBox?
« Respuesta #6 en: Viernes 19 de Septiembre de 2008, 15:22 »
0
B) ... excelente, esto lo estaba buscando.... simple, no?? :lol: ...
Muchas gracias... :good:


Yo quiero mucho a Toph ---> Mi Web]http://ingenieriacivil.foroactivo.com[/url]

Jimbenit

  • Miembro MUY activo
  • ***
  • Mensajes: 269
  • Nacionalidad: co
    • Ver Perfil
    • http://ingenieriacivil.foroactivo.com
Re: Como se imprime un PictureBox?
« Respuesta #7 en: Viernes 19 de Septiembre de 2008, 16:34 »
0
Hola a todos... he estado mirando post anteriores que hablen sobre metodos graficos pero ninguno me contesta la siguiente pregunta:
Bueno, quiero imprimir un formulario que tenga 3 picturebox, el codigo utlizado es:
Código: Text
  1. Me.PrintForm
  2.  
Pero cuando el formulario se imprime, se imprime lo siguiente:
* El contenido en el formulario (quiero decir, el area correspondiente al formualrio )
* Se imprime el contenido del Picture1 (atencion, son 3 PictureBox)
* El contenido del segundo picturebox no se imprime, como tampoco el contenido del tercero

Me gustaria que se imprimiera el contenido del formulario, incluyendo el contenido de los picture, de los 3 PictureBox y no solo de uno)


Invito a hacer el siguiente ejemplo (para que se me entienda):

Coloquen en un formulario 3 PictureBox, y copien y peguen el siguiente codigo:

Código: Text
  1. Private Sub Form_Load()
  2.  
  3. Me.Picture1.AutoRedraw = True
  4. Me.Picture1.ScaleMode = 6
  5. Me.Picture2.AutoRedraw = True
  6. Me.Picture2.ScaleMode = 6
  7. Me.Picture3.AutoRedraw = True
  8. Me.Picture3.ScaleMode = 6
  9.  
  10.  
  11. Me.Picture1.Line (0, 0)-(20, 20)
  12. Me.Picture2.Line (0, 0)-(20, 20)
  13. Me.Picture3.Line (0, 0)-(20, 20)
  14.  
  15. Me.PrintForm
  16.  
  17. End Sub
  18.  
  19.  

Y solo se imprime el contenido del picture1, como hago para que se imprima el contenido de los 3 picture??


Saludos.


Yo quiero mucho a Toph ---> Mi Web]http://ingenieriacivil.foroactivo.com[/url]

Jimbenit

  • Miembro MUY activo
  • ***
  • Mensajes: 269
  • Nacionalidad: co
    • Ver Perfil
    • http://ingenieriacivil.foroactivo.com
Re: Como se imprime un PictureBox?
« Respuesta #8 en: Viernes 19 de Septiembre de 2008, 20:23 »
0
Bueno, aun no he podido... aun no he podido imprimir los 3 picture en el mismo formulario.
Me gustaria saber si alguno sabe, bueno o por lo menos escriban lo que piensan , aun cuando no puedan... depronto eso que piensan me ayuda a encontrar una solución. :mellow:


Yo quiero mucho a Toph ---> Mi Web]http://ingenieriacivil.foroactivo.com[/url]

Nebire

  • Miembro HIPER activo
  • ****
  • Mensajes: 670
    • Ver Perfil
Re: Como se imprime un PictureBox?
« Respuesta #9 en: Jueves 25 de Septiembre de 2008, 13:40 »
0
Cita de: "Nilson Yair"
Bueno, aun no he podido... aun no he podido imprimir los 3 picture en el mismo formulario.
Me gustaria saber si alguno sabe, bueno o por lo menos escriban lo que piensan , aun cuando no puedan... depronto eso que piensan me ayuda a encontrar una solución. :mellow:
Mira, te he hecho una librería para capturar la ventana, o una región de la misma, captura la ventana y devuelve una imagen ahora ya simplemente imprimies la imagen. el picturebox sobre el que lo destines debería estar oculto, para no mezclar su contenido con el de una nueva y posible captura.

En el fichero se incluye tanto la librería como las intrucciones y el código para probarlo, de todos modos el código lo repito aquí así si necesitas comentar algo irá mejor...
para descargar el archivo, .... al final del mensaje está el enlace
Código: Visual Basic
  1.  
  2.  
  3. ' Declaraciones de API...
  4. Private Declare Function Capturar_Ventana Lib "Captura.dll" (ByVal Ventana As Form, Rect As Coord2D, Optional ByVal AreaCliente As Boolean = False, Optional ByVal ROP As RasterOpConstants = vbSrcCopy) As Picture
  5. Private Declare Function Version_Test Lib "Captura.dll" (Optional ByVal testVisual As Boolean = False) As String
  6.  
  7. '%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  8. '                  NEBIRE                 NEBIRE                       NEBIRE
  9. '()))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
  10. '))))))  Ventana= Nombre del formulario, típicamente será ME u otro.                 ((((((((
  11. '(((((   Rect = coordenadas y dimensiones de la región, por defecto es 0,            ))))))))
  12. '))))))              un valor negativo se trunca a 0.                                              ((((((((
  13. '(((((  AreaCliente= si es false (por defecto) captura toda la ventana,                 ))))))))
  14. '))))))              si es true= sólo el área cliente (sin el marco)                            (((((((
  15. '(((((   ROP = son las constantes de Raster, no confundir con las constantes de    )))))))
  16. '))))))              shape, que sirven para lo mismo pero tiene diferente valor.         (((((((
  17. '(((((  ---------------------------------------------------------------------------------------   )))))))
  18. '))))))   Devuelve una imagen, que debería entregarse a un picture oculto.           (((((((
  19. '((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((()
  20.  
  21. ' Estructura tipo RECT
  22. Private Type Coord2D
  23.     X As Long
  24.     Y As Long
  25.     Ancho As Long
  26.     Alto As Long
  27. End Type
  28. Dim cDefecto As Coord2D  'para valores por defecto....
  29.  
  30. ' con parámetros por defecto, para ver ejemplos de otros parámetros en el siguiente código.
  31. Private Sub Command1_Click()
  32.     Picture3.Picture = LoadPicture()
  33.     Picture3.Picture = Capturar_Ventana(Me, cDefecto)
  34. End Sub
  35.   
  36. Private Sub Form_Load()
  37.     Command1.Caption = "Capturar form completo"
  38.     Command3.Caption = "Capturar cliente negativo"
  39.     Command4.Caption = "Capturar banda negativo"
  40.     Command2.Caption = "test dll"
  41.    
  42.     Picture3.BackColor = &H0&       ' negro
  43.     Picture3.BorderStyle = 0 ' sin borde
  44.     Picture3.AutoSize = True ' importante.
  45.     ' colocar imágenes y más cosas en los otros picturebox, etc...
  46.    
  47.     ' tomamos valores por defecto... valores negativos fuerzan ajustarse al tamaño del formulario.
  48.     With cDefecto
  49.         .X = -1
  50.         .Y = -1
  51.         .Ancho = -1
  52.         .Alto = -1
  53.     End With
  54. End Sub
  55.  
  56.  

Otros ejemplos de uso de la llamada . Pasando diferentes parámetros
Código: Visual Basic
  1.  
  2. ' con todos los parámetros, se usa una operación de fusión... por defecto es vbSrcCopy
  3. Private Sub Command3_Click()
  4.     Dim d2 As Coord2D
  5.    
  6.     d2.X = 0: d2.Y = 0
  7.     d2.Ancho = Me.Width: d2.Alto = Me.Height
  8.    
  9.     Picture3.Picture = Nothing
  10.     Picture3.Picture = Capturar_Ventana(Me, d2, True, vbNotSrcCopy)
  11. End Sub
  12.  
  13. ' se toma una región (banda) de arriba abajo del formulario de 2000 twips de ancho empezando en el 2000
  14. Private Sub Command4_Click()
  15.      Dim d2 As Coord2D
  16.          
  17.     d2.X = 2000: d2.Y = 0
  18.     d2.Ancho = 4000: d2.Alto = Me.Height
  19.    
  20.     Picture3.Picture = Nothing
  21.     Picture3.Picture = Capturar_Ventana(Me, d2, False, vbMergePaint)
  22. End Sub
  23.  
  24.  

Testear si la dll resulta 'visible' (vamos si encuentra la referencia)
Código: Visual Basic
  1.  
  2.  
  3. Private Sub Command2_Click()
  4.     Dim n As String
  5.    
  6.     'si la longitud de n es 0 no pasó el test.
  7.    n = Version_Test
  8.     If Len(n) > 0 Then MsgBox "pasó el text."
  9.     n = Replace(n,chr(0),"")
  10.     MsgBox "Test: " & n
  11. End Sub
  12.  
  13.  
  14.  
  15.  
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.
« última modificación: Sábado 4 de Octubre de 2008, 01:32 por Nebire »
«Ma non troppo»
----> ModoVacaciones = False<----

Jimbenit

  • Miembro MUY activo
  • ***
  • Mensajes: 269
  • Nacionalidad: co
    • Ver Perfil
    • http://ingenieriacivil.foroactivo.com
Re: Como se imprime un PictureBox111?
« Respuesta #10 en: Jueves 25 de Septiembre de 2008, 18:49 »
0
BUeno... gracias Nebire... pero mira la solución que le dí....

Coloca 3 Picturebox y un boton. Prueba el siguiente codigo

MI secreto es capturar la imagen de cada Picture, almacenarla en el App.Path y luego cargarla en los picture, Inteligente, no??

Código: Text
  1. Option Explicit
  2. Private Declare Function BitBlt Lib "gdi32" ( _
  3.     ByVal hDestDC As Long, _
  4.     ByVal X As Long, _
  5.     ByVal Y As Long, _
  6.     ByVal nWidth As Long, _
  7.     ByVal nHeight As Long, _
  8.     ByVal hSrcDC As Long, _
  9.     ByVal xSrc As Long, _
  10.     ByVal ySrc As Long, _
  11.     ByVal dwRop As Long) As Long
  12.  
  13. Private Declare Function GetDC Lib "user32" (ByVal hWnd As Long) As Long
  14.  
  15. Private Declare Function GetWindowDC Lib "user32" (ByVal hWnd As Long) As Long
  16.  
  17. Function Obtener_Imagen(PictureKE As PictureBox) As StdPicture
  18. '25 Sep /2008
  19. 'Esta función obtiene del presente picture como una imagen BMP
  20. 'IMPORTANTE:
  21. 'Cuando llames a esta funcion, debes saber que los picture perderan las escalas, asi que
  22. 'lo que yo (Nilson) te recomiendo es que una vez guardadas las imagenes como bmp, este formulario
  23. 'deberá cerrarse, cargar otro con 3 Images y alli cargar las imagenes que generaste para
  24. 'luego imprimir ese formulario. (esto es mientras perfeciono esta función)
  25.     Dim hdc As Long
  26.     Dim Escala_Anterior As Integer
  27.     Dim Ancho As Long
  28.     Dim Alto As Long
  29.     Dim Pictemp As PictureBox
  30.    
  31.     ' crea un pic temporal
  32.     Set Pictemp = Controls.Add("vb.picturebox", "Pic1")
  33.     With Pictemp
  34.         Pictemp.AutoRedraw = True
  35.         .Visible = False
  36.         .ScaleMode = vbPixels
  37.         .Width = PictureKE.Width
  38.         .Height = PictureKE.Height
  39.     End With
  40.    
  41.     ' escalas
  42.     With PictureKE
  43.         Escala_Anterior = .ScaleMode
  44.         .ScaleMode = vbPixels
  45.         Ancho = .ScaleWidth
  46.         Alto = .ScaleHeight
  47.     End With
  48.    
  49.     ' Captura el área de pantalla correspondiente al formulario
  50.     hdc = GetDC(PictureKE.hWnd)
  51.    
  52.     ' Copia esa área al picturebox
  53.     BitBlt Pictemp.hdc, 0, 0, Ancho, Alto, hdc, 0, 0, vbSrcCopy
  54.    
  55.     Pictemp.Picture = Pictemp.Image
  56.     Set Obtener_Imagen = Pictemp.Picture
  57.    
  58.     ' restaura la escala
  59.     PictureKE.ScaleMode = Escala_Anterior
  60.    
  61.     ' remueve el control picbox
  62.     Controls.Remove "Pic1"
  63.     Set Pictemp = Nothing
  64.    
  65. End Function
  66.  
  67.  
  68. Private Sub Command1_Click()
  69.     SavePicture Obtener_Imagen(Me.Picture1), App.Path & "PlanoXY.bmp"
  70.     SavePicture Obtener_Imagen(Me.Picture2), App.Path & "PLanoXZ.bmp"
  71.     SavePicture Obtener_Imagen(Me.Picture3), App.Path & "Informacion.bmp"
  72.    
  73.     Picture1.Cls
  74.     Picture1.Picture = LoadPicture(App.Path & "PlanoXY.bmp")
  75.     Picture2.Cls
  76.     Picture2.Picture = LoadPicture(App.Path & "PlanoXZ.bmp")
  77.     Picture3.Cls
  78.     Picture3.Picture = LoadPicture(App.Path & "Informacion.bmp")
  79.    
  80.     Me.PrintForm
  81.    
  82.  
  83.  
  84. End Sub
  85.  
  86. Private Sub Form_Load()
  87.  Me.Picture1.AutoRedraw = True
  88.  Me.Picture1.ScaleMode = 6
  89.  Me.Picture2.AutoRedraw = True
  90.  Me.Picture2.ScaleMode = 6
  91.  Me.Picture3.AutoRedraw = True
  92.  Me.Picture3.ScaleMode = 6
  93.  
  94.  
  95.  Me.Picture1.Line (0, 0)-(20, 20)
  96.  Me.Picture2.Line (0, 0)-(20, 20)
  97.  Me.Picture3.Line (0, 0)-(20, 20)
  98.  
  99. End Sub
  100.  
  101.  



Que tal??...  :good: ....
Pero me gustaria ver las posibles soluciones a este problema, tal vez mi codigo lo mejoren ustedes...


Yo quiero mucho a Toph ---> Mi Web]http://ingenieriacivil.foroactivo.com[/url]

Nebire

  • Miembro HIPER activo
  • ****
  • Mensajes: 670
    • Ver Perfil
Re: Como se imprime un PictureBox111?
« Respuesta #11 en: Viernes 26 de Septiembre de 2008, 01:18 »
0
Los tiros van por ahí, usando funciones de la API para capturar el área deseada.

No obstante haces cosas no necesarias que ralentizan y complican el proceso, por ejemplo para que guardar imágenes a disco ?... es mejor guardarlas en un 'DC de memoria'... paraqué guardar 3 imágenes ?... si están todas en un formulario basta con capturar sólo una.

Te comento otras cosas... por ejemplo cuando trabajas con API (o con cualquier función) no tienes que cambiar ningún parámetro que no se te haya pasado expresamente en la línea de parámetros de la función. La razón es que a nadie le gusta 8ni siquiera a uno mismo) que se le altere una propiedad que no consta en la lista de parámetros. Por tanto que se pase un handle no es excusa para cambiar valores, el handle debe usarse exclusivamente para hallar valores. Esto es aunque tu hayas tomado temporalmente el scalemode de origen lo cambias y al final lo restaures, no es lo adecuado, sólo debería hacerse como último recurso.  El modo de proceder correctamente sería crear tu 'rect' esto es una estructura Point y una Size y convertir los valores de procedencia a la escala deseada, tal como te ilustro en este ejemplo:

Código: Visual Basic
  1.  
  2.    public type RECT  ' los ponemos como long, porque usaremos píxeles, si usáramos twips los pondríamos como single, para no perder tamaño en sucesivos cambios
  3.       X as long
  4.        Y as long
  5.       Ancho as long
  6.       alto as long
  7.   end type
  8. ' sea una función cualqiera que recibe una ventana como parámetro, por ejemplo.
  9. public function maneja_lo_que_Sea(f as form) as long
  10.      dim r as rect
  11.  
  12.         r.ancho= f.sclaex(f.width, f.scalemode,vbpixels)
  13.         r.alto= f.sclaey(f.height, f.scalemode,vbpixels)
  14.    ' lo que sea que hicera la función...
  15.   end function
  16.  
  17.  

Como puedes ver se obtienen valores sin modificar los originales ni cambiar (esto es lo realmente importante) otras propiedades no implicadas directamente, como es scalemode. Tu por ejemplo cambiaste 'PictureKE.scalemode'  .Esto siempre tienes que intentar no hacerlo, si no encuentras otra manera, pués no queda más remedio que apañarlo como sea. Esto tiene su importancia porque con el paso del tiempo luego algo se cambia y nadie sabe porqué, especialmente cuando se trabaja asíncronamente y aunque sea por un pequeño lapso de tiempo se entenderá como un bug, que de repende no se recuerda ni se sabe a qué es debido, es como un fantasma que aparece de cuando en cuando... con una buena práctica esto debe evitarse.

Luego capturas sólo el área de cliente, y yo creí que habías dicho el formulario completo, este consta del área de cliente y el marco, si realmente no te explicaste bien, pues vale pero si realmente quieres capturar también ese trozo no lo llevas a cabo. Según para que lo quieras puede o no ser importante, por ejemplo si es una ventana de exploración de internet no capturas la dirección que figura.

Donde me pierdo y no se realmente qué quieres es en lo de los 3 picturebox, creí entender que querías capturar un formulario que tiene 3 picturebox (o los que sean) hasta ahí queda claro, pero luego les 'metes' una imagen a cada uno, no entiendo para qué...?????

Por último sólo recordarte que en todo puedes simplificar funciones (salvo que te resulte más confuso seguirlo) anidándolas... por ejemplo:
Código: Visual Basic
  1.  
  2.    ' siendo la función ...
  3.    Function Obtener_Imagen(PictureKE As PictureBox) As StdPicture
  4.            ........
  5.     end function
  6.  
  7.      ' el código siguiente ....
  8.      SavePicture Obtener_Imagen(Me.Picture1), App.Path & "PlanoXY.bmp"
  9.       Picture1.Cls
  10.       Picture1.Picture = LoadPicture(App.Path & "PlanoXY.bmp")
  11.  
  12.  ' puede ponerse así
  13.       Picture1.Cls
  14.        Picture1.Picture = Obtener_Imagen(Me.Picture1)
  15.  
  16.  
Te ahorras guardar a disco y cargar de disco...
saludos.
«Ma non troppo»
----> ModoVacaciones = False<----

Jimbenit

  • Miembro MUY activo
  • ***
  • Mensajes: 269
  • Nacionalidad: co
    • Ver Perfil
    • http://ingenieriacivil.foroactivo.com
Re: Como se imprime un PictureBox111?
« Respuesta #12 en: Viernes 26 de Septiembre de 2008, 19:16 »
0
Citar
Nebire:
paraqué guardar 3 imágenes ?... si están todas en un formulario basta con capturar sólo una.

Bueno, como guardar una sola imagen consume mucho recurso si se tiene encuenta que esta imagen es grande, entonces producirá error. Asi que lo mejor es partir la imagen en mas pequeñas para que el consumo sea menor y asi no daqr error (esto solo sucede para algunos computadores que tienen poca memoria).
En mi codigo puedes cambiar solo una linea para decirle que no capture un Picture, sino el formulario completo, pero esto no lo hago por lo que te dije anteriormente.


Código: Text
  1. Obtener_Imagen(PictureKE As PictureBox) As StdPicture
  2.  
  3.  

Código: Text
  1. Obtener_Imagen(FormKE As Form) As StdPicture
  2.  
  3.  
Moskito, me gustaria ver tu solución... Saludos  B)

Saludos.
Nebire, pero lo importante es llegar a la solución, cierto??? :P

 :good:


Yo quiero mucho a Toph ---> Mi Web]http://ingenieriacivil.foroactivo.com[/url]

Nebire

  • Miembro HIPER activo
  • ****
  • Mensajes: 670
    • Ver Perfil
Re: Como se imprime un PictureBox111?
« Respuesta #13 en: Viernes 26 de Septiembre de 2008, 22:26 »
0
Cita de: "Nilson Yair"
Bueno, como guardar una sola imagen consume mucho recurso si se tiene encuenta que esta imagen es grande, entonces producirá error.
[Nebire, pero lo importante es llegar a la solución, cierto??? :P

:good:

Bueno, de cuanta memoria estamos hablando ????.. Piensa que si alguien trabaja con un computador con poca memoria es bastante probable que por las mismas razones también trabaje sobre una baja resolución de pantalla (pongamos 800x600) con lo que el consumo de memoria tampoco es excesivo. En cualquier caso sea la memoria que se tenga siempre ha de poderse trabajar con una imagen de tamaño igual a la pantalla.

Lo que quiero decir es que no es conveniente hacer un programa pensando en las limitaciones de tu computador ni en las limitaciones actuales, ya que con ello 'castigas' al resto yen un futuro posiblemente no muy lejano deje de interesar por las limitaciones que le has impuesto. Una solución adecuada sería ofrecer la posibilidad de que pueda adptarse para usar tanto con pocos recursos como con recursos 'sobrados', por ejemplo consultando la memoria de que dispone el equipo puedes decidir si la limitación tiene o no sentido. si tienes más de 128Mb. de RAM, no merece la pena hacer ese tipo de restricciones. Normalmente si alguien tiene esa memoria o menos suele funcionar con un windows anterior al XP que consumen menos recursos (el S.O.)

Cita de: "Nilson Yair"
Nebire, pero lo importante es llegar a la solución, cierto???  
Es bueno ser capaz de alcanzar el objetivo que uno tenía propuesto aunque no sea de la forma más óptima. Eso es señal de que uno investiga, piensa y busca soluciones hay quien es una nulidad completa para pensar. A veces se ven mensajes preguntando por cosas tan simples y evidentes que no merece la pensa ni perder el tiempo en responder porque el individuo es un vago que no se ha tomado la molestia mínima y espera que se lo solucionen los demás.

Cita de: "Nilson Yair"
Moskito, me gustaria ver tu solución...
No es asunto que me incumba, pero no creo que sea pertienente pedir a nadie una solución de algo, especialmente si ni siquiera ha manifestrado nada al respecto. La gente participa libremente y cuando decide no entrar en un tema sus razones tendrá, a menudo suele ser porque ya se dió respuesta al tema, pero en fin cada uno dedica su iempo como le parece.
«Ma non troppo»
----> ModoVacaciones = False<----

Jimbenit

  • Miembro MUY activo
  • ***
  • Mensajes: 269
  • Nacionalidad: co
    • Ver Perfil
    • http://ingenieriacivil.foroactivo.com
Re: Como se imprime un PictureBox111?
« Respuesta #14 en: Miércoles 1 de Octubre de 2008, 18:49 »
0
:good:  Gracias a todos los que respondieron, me ayudaron mucho.


Yo quiero mucho a Toph ---> Mi Web]http://ingenieriacivil.foroactivo.com[/url]