Jueves 14 de Noviembre de 2024, 23:07
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
Visual Basic 6.0 e inferiores
(Moderador:
F_Tanori
) »
Re: API de windows...
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Re: API de windows... (Leído 2678 veces)
pacegar
Miembro MUY activo
Mensajes: 108
Nacionalidad:
Re: API de windows...
«
en:
Martes 23 de Septiembre de 2003, 11:43 »
0
Hola, dos cosas relacionadas con las API
Primero quería proponer un foro solo para API ya que veo que no está disponible y se pueden tratar cosas importantes...
Segundo. Mi pregunta va relacionada con API y es que necesito caputurar un área definida por mi de un formulario... necesito capturar ese area para luego imprimirlo en un report.
Tweet
Pedro Acevedo
Director de Desarrollo
INTEGRA Tecnología y Comunicación de Canarias
www.integracanarias.com
Brroz
Miembro de PLATA
Mensajes: 1058
Re: API de windows...
«
Respuesta #1 en:
Martes 23 de Septiembre de 2003, 11:59 »
0
Hola pacegar
Sobre la primera cuestión échale un vistazo al foro
Sugerir un nuevo foro
.
Sobre lo segundo, mira éste enlace a otro tema del foro
http://foros.solocodigo.com/viewthread.php?tid=4635
y a ver que tal.
Ánimo y suerte.
pacegar
Miembro MUY activo
Mensajes: 108
Nacionalidad:
Re: API de windows...
«
Respuesta #2 en:
Martes 23 de Septiembre de 2003, 12:39 »
0
Primeramente, muchas gracias por la pronta respuesta!
Si que funciona, pero el problema se encuentra que el picture2 (destino) lo debo de tener en otro formulario... y mencionandolo así en la función no me pega la imagen....
Se te ocurre algo?
lngRc = BitBlt(Picture1.hDC, 1, 1, 7185, 4275, form2.Picture1.hDC, 1, 1, &HCC0020)
Pedro Acevedo
Director de Desarrollo
INTEGRA Tecnología y Comunicación de Canarias
www.integracanarias.com
Brroz
Miembro de PLATA
Mensajes: 1058
Re: API de windows...
«
Respuesta #3 en:
Martes 23 de Septiembre de 2003, 12:55 »
0
¿Puede ser que la propiedad
Autoredraw
del segundo PictureBox sea
False
? Si esto es así, no dudes en ponerla a True.
Si el problema no se arregla, más tarde hago unas pruebas y a ver si te digo algo.
Chao.
Brroz
Miembro de PLATA
Mensajes: 1058
Re: API de windows...
«
Respuesta #4 en:
Martes 23 de Septiembre de 2003, 14:49 »
0
Hola pacegar.
Asegúrate de lo que te comentaba antes: que en el PictureBox destino la propiedad
Autoredraw = True
. Esto es necesario para que la imagen que resulta de un método gráfico sea persistente.
Aparte de esto, observo lo siguiente: Si la llamada a la api se realiza a continuación del método show del formulario que abres y no da tiempo a que el formulario se haya visualizado, no se pinta la imagen copiada. Para solucionar esto incluye un
DoEvents
a continuación del 'Show' y listo.
Y una última cosa (por si acaso): Verifica que en la llamada a la api, el orden de los parámetros es el correcto. Fíjate que en primer lugar va el hDC del PictureBox destino, en lugar del origen como intuitivamente podría parecer.
Abur.
pacegar
Miembro MUY activo
Mensajes: 108
Nacionalidad:
Re: API de windows...
«
Respuesta #5 en:
Martes 23 de Septiembre de 2003, 18:27 »
0
perfecto... poniendo el autoredraw a true y haciendo una pausa entre el copiado el show del nuevo form, todo va bien!
Gracias por todo!
Pedro Acevedo
Director de Desarrollo
INTEGRA Tecnología y Comunicación de Canarias
www.integracanarias.com
pacegar
Miembro MUY activo
Mensajes: 108
Nacionalidad:
Re: API de windows...
«
Respuesta #6 en:
Miércoles 24 de Septiembre de 2003, 14:19 »
0
Me ha surgido otro problema...
A la hora de imprimir ese formulario donde tengo los pictures con las copias... no me los imprime.... salen en blanco...
He hecho el autroredraw del form y un refresh pero nada...
Alguna idea?
Pedro Acevedo
Director de Desarrollo
INTEGRA Tecnología y Comunicación de Canarias
www.integracanarias.com
Brroz
Miembro de PLATA
Mensajes: 1058
Re: API de windows...
«
Respuesta #7 en:
Miércoles 24 de Septiembre de 2003, 14:36 »
0
Hola pacegar
Si estás utilizando la propiedad 'Picture' del PictureBox no te imprimirá nada (a no ser que hubieras cargado desde un fichero una imagen en el control). Utiliza la propiedad
Image
y a ver que tal.
Abur.
Ep! Disculpas. Acabo de ver que lo que intentas imprimir es el formulario, no el PictureBox... lo tendría que ver.
pacegar
Miembro MUY activo
Mensajes: 108
Nacionalidad:
Re: API de windows...
«
Respuesta #8 en:
Miércoles 24 de Septiembre de 2003, 14:41 »
0
el objeto image no tiene la propiedad hDc... aun así no consigo copiar un picture a un image con el BitBlt...
Pedro Acevedo
Director de Desarrollo
INTEGRA Tecnología y Comunicación de Canarias
www.integracanarias.com
Brroz
Miembro de PLATA
Mensajes: 1058
Re: API de windows...
«
Respuesta #9 en:
Miércoles 24 de Septiembre de 2003, 14:58 »
0
Acabo de probar el caso y a mi
SÍ
me funciona perfectamente. Para imprimir el formulario utilicé el método
PrintForm
del mismo.
Lo que te decía de la propiedad
Image
no era para hacer la copia sobre un hDC que tuviera la propiedad, sino
para imprimir
el contenido del PictureBox (con
Printer.PaintPicture Picture1.Image, x , y
cosa que también funciona perfectamente), aunque luego me fijé que lo que querías imprimir era el formulario (de todas formas y como curiosidad, supongo que se podrían copiar los bits creando un hDC compatible y todas esas movidas...). Disculpa que me hubiese explicado mal.
Chao.
pacegar
Miembro MUY activo
Mensajes: 108
Nacionalidad:
API de windows...
«
Respuesta #10 en:
Jueves 25 de Septiembre de 2003, 14:04 »
0
Por si a alguien le sirve...
al final lo arreglé, sobreescribiendo el contenido del picture asi, y por lo tanto se puede imprimir el formulario
lngRc = BitBlt(Picture2.hDC, 1, 1, 7185, 4275, form2.Picture1.hDC, 1, 1, &HCC0020)
clipboard.seldata = picture2.image
picture2=clipboard.getdata
Pedro Acevedo
Director de Desarrollo
INTEGRA Tecnología y Comunicación de Canarias
www.integracanarias.com
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
Visual Basic 6.0 e inferiores
(Moderador:
F_Tanori
) »
Re: API de windows...