PDA

Ver la Versión Completa : Me traen como loco dos o más WebBrowser's


Faust
29-04-2008, 14:32:49
Saludos foreros, esto si que me ha puesto loco...

Sucede que estoy haciendo un programilla MDI en donde cada Child ejecuta una consulta para despues trabajar con estos datos, pues sucede que en los form Child tengo un TADOQuery y un TWebBrowser y cada vez que me muevo por cada registro del query, navego mediante el WebBrowser a diferentes páginas, dependiendo de los datos del registro seleccionado, pues sucede que cuando hago esto, los WebBrowser de todas mis Child abiertas se van a la misma página, a la del último registro que me muevo, pareciera que al ejecutar mi línea WebBrowser.Navigate todos mis WebBrowser creados en mi aplicación se van a la misma página... :mad::confused::mad::confused:


Ahhhhhhhhhhhhhhhhhhhhhhhhhhh:mad:

Ayuda antes de que me vuelva loco..

Ah Gracias de antemano.

Delphius
29-04-2008, 16:01:27
Hola Faust,
Respira, calma.

Ahora si. ¿Nos podrías explicar mejor tu situación? En lo posible algo del código.

Saludos,

ContraVeneno
29-04-2008, 16:15:24
yo supongo que todos estarán enlazados al mismo punto, sería por eso que mueves uno y se mueven todos.

Faust
29-04-2008, 17:13:28
A ver a ver...

Los formularios MDI están creados a partir de uno solo que es como una plantilla, y los creo así:


with TfrmUltRep.Create(Self) do
begin
// Aquí hago los ajustes necesarios para el form, incluyendo el SQL del Query
end;
with TfrmUltRep.Create(Self) do
begin
// Aquí hago los ajustes necesarios para este otro form
end;
// Por acá puedo crear otras MDIChild de la clase TfrmUltRep con sus ajustes



En cada form de estos hay un Query, un DataSource, una rejilla y un WebBrowser, el WebBrowser se actualiza conforme cambio de registro en el evento AfterScroll del query con el siguiente código que está en el form frmUltRep:


wbMapa.Navigate(Mapa)


La URL en la variable Mapa es correcta y la construyo a partir del registro seleccionado en la rejilla, y los querys tienen la información correcta, pero al ejecutar Navigate del WebBrowser, en todas las MDIChild de la clase TfrmUltRep veo la página web de la última vez que se ejecutó en el AfterScroll (con wbMapa.Navigate(Mapa)).

Tendrá algo que ver que todas las MDIChild las creo de la misma forma, este comportamiento del WebBrowser se me hace muy extraño...

Ah por cierto estoy usando Delphi 7 y mi PC es Win XP Pro SP 2 y tiene el Internet Explorer actualizado a la ver. 7.

Ya busqué por google algun problema similar u otra solución y no he encontrado nada que se le parezca.

Gracias por su atención compañeros

Draker
02-05-2008, 03:19:43
Hola Faust, fijate que tengo el mismo problema, yo utilizo el PageControl, y creo TabSheets de forma dinamica mediante un boton, al mismo tiempo creo objteos WebBroser, puedo navegar en cada TabSheet, pero al volver a cualquiera de ellas, la informacion de CSC_NAVIGATEBACK por ejemplo es la de el WebBrowser actual y no de la que realmente le pertenece, no se si abria la manera de poder releer estas propiedades cada vez que se accede a el tabsheet en mi caso o a las child en el tuyo, es decir volver a leer los eventos de ese webbroser en particular...

Faust
06-05-2008, 14:04:51
No lo sé amigo Draker, deja lo pruebo.