Título: Problema con el control webbrowser Publicado por: snakeboy8 en 24 Enero 2015, 17:15 pm tengo un problema con el control webbrowser
hice un programa para ver solo una pagina en especial con un form1 y un webbrowser1 pero cuando quiero minimizar la ventana esta regresa a como estaba antes, pasa de minimized a normal automaticamente esto solo pasa cuando la pagina esta cargada y con esa pagina en especial con alguna otra pagina no tengo ese problema como puedo evitar que pase esto? tambien queria saber si hay alguna forma de detectar el error 404 en el webbrowser mediante codigo Gracias :P Título: Re: Problema con el control webbrowser Publicado por: Eleкtro en 24 Enero 2015, 19:29 pm hice un programa para ver solo una pagina en especial con un form1 y un webbrowser1 pero cuando quiero minimizar la ventana esta regresa a como estaba antes, pasa de minimized a normal automaticamente esto solo pasa cuando la pagina esta cargada y con esa pagina en especial con alguna otra pagina no tengo ese problema como puedo evitar que pase esto? Muestra tú código, y la página en cuestión. tambien queria saber si hay alguna forma de detectar el error 404 en el webbrowser mediante codigo No, no es posible. Tienes dos opciones: 1) Realizar una petición HTTP antes de navegar en el WebBrowser control, para parsear la respuesta del server: Código
2) Usar la interface COM de SHDocVw.WebBrowser: Primero referencia al proyecto Microsoft Internet Controls (http://i.imgur.com/qAl3Mre.png) Y luego...: Código
Título: Re: Problema con el control webbrowser Publicado por: snakeboy8 en 24 Enero 2015, 20:09 pm los 2 ejemplos que pusiste en codigo son muy buenos gracias
bueno aqui esta el codigo donde la ventana pasa de minimizada a normal por si sola Código
cabe mencionar que esta pagina usa flash Título: Re: Problema con el control webbrowser Publicado por: Eleкtro en 24 Enero 2015, 20:54 pm Cuando digo que muestres el código me refiero a todo lo que sea relevante al problema, por ejemplo si estás minimizando/restaurando el Form mediante código (o haciendolo en un MDI donde tengas el WebBrowser), etc, a menos que realmente solo sea relevante esa instrucción que mostraste... claro está.
Explica los pasos a seguir para intentar reproducir el problema, porque lo que comentas que te sucede es algo muy raro ...al menos sin conocer más información sobre la app, danos también un poco más de información respecto a la app, ¿es un WinForms?, una imagen también estaría bien. Saludos Título: Re: Problema con el control webbrowser Publicado por: snakeboy8 en 24 Enero 2015, 22:04 pm si es un windowsform normal
este proyecto solo tiene un form y solo tiene un control llamado webbrowser1 y en el form_load este codigo Código
y a la hora de minimizar el form1 este regresa a su estado original por si solo aca te dejo el source del proyecto http://www8.zippyshare.com/v/Aj8nAuUu/file.html (http://www8.zippyshare.com/v/Aj8nAuUu/file.html) ya he intentado en el form_resize añadir codigo para arreglar esto pero el codigo de este evento se ejecuta hasta lo ultimo y no viene sirviendo de nada el codigo de este evento Título: Re: Problema con el control webbrowser Publicado por: Eleкtro en 25 Enero 2015, 01:15 am Sinceramente, jamás vi este tipo de comportamiento en una aplicación, de todas formas hay varios bugs conocidos sobre la pérdida de foco de un WebBrowser (los cuales Microsoft no ha arreglado en años, ni pensará en hacerlo), y esto parece ser más o menos algo similar, ya que el WebBrowser se activa automaticamente o hace que el form se reactive tras minimizarlo, creo que quizás has descubierto o re-descubierto un bug con el WebBrowser que se da en circunstancias muy específicas (las cuales desconozco), de alguna manera esa url tambien debe estar involucrada, ¿pero cómo?, ¡no lo se!.
Bueno, tras investigar un poco el código he averiguado varias cosas sin sentido 1) La propiedad Dock del WebBrowser es lo que entra en conflicto con el Form, mientras el valor de la propiedad Dock sea Fill, el form se reactivará al minimizarlo, y no sirve de nada insertar el WebBrowser en un panel, o añadir márgenes en el Form (superponer o sobreponer el webbrowser), ni nada similar. 2) Así pues, si no quieres que la ventana del form se auto-restaure, primero debes desactivar el Docking del WebBrowser (cambiarlo de Fill a None), y viceversa al restaurar la ventana del Form, (de None a Fill) pero he aquí otro problema que también has descubierto, no sirve de nada suscribirse a los eventos Size/Resize del Form (ni tampoco del WebBrowser) para intentar hacer esas modificaciones. 3) El problema desaparece si instancias el Form en tiempo de ejecución, en vez de añadir el control en tiempo de diseño. Esa sería una solución. ( Ambos WebBrowsers usando el mismo docking, pero el problema desaparece, ¡no tiene sentido! ) Al final he optado por procesar los mensajes de la ventana usando el procedimiento WndProc, pero vaya mi sorpresa fue descubrir que ¡modificar el Docking del webbrowser justo al procesar el mensaje de minimizado tampoco tiene ningún efecto! (mientras que si lo haces antes, si que surge efecto). Pero por suerte, descubrí que era suficiente con modificar la visibilidad del WebBrowser, aunque solo tiene efecto si la modificas al procesar los mensajes de la ventana del Form. Solución: Código
Saludos Título: Re: Problema con el control webbrowser Publicado por: snakeboy8 en 25 Enero 2015, 01:59 am Gracias bro la verdad te la rifaste ;-)
Gracias |