Bonjour,
j'ai un gros souci avec l'objet CWebControl2: je ne peux pas appeler deux fois de suite la fonction navigate sans que le controle se mette en vrac.
Un exemple d'utilisation: je charge la page google avec un appel à Navigate().
Je fais une recherche et clique sur des liens, tout va bien.
Je change de page avec une barre d'adresse, vers par exemple, yahoo.fr. Et là, il ne se passe rien, pire, à partir de là plus possible de naviguer avec le controle, les liens ne répondent plus, impossible d'aller à la page précédente, etc... (le controle ne freeze pas, par contre)
J'ai regardé deux évenements OnBeforeNavigateComplete2 et OnNavigateComplete2.
Le deuxième coup, je ne passe pas dans OnNavigateComplete2, alors que je suis bien passé dans OnBeforeNavigateComplete2 et que la chaine qui contient l'URL est bien formatée.
J'ai essayé de forcé un arret de chargement de page avant d'appeler Navigate, au cas ou un chargement en cours ou un script puisse mettre le bazar, mais rien n'y fait. 
L'appli est lourdement multithreadée, j'ai un gros paquet de controles, est ce que cela pourrait venir de là ? (avec une appli qui ne contient que ce controle, je n'ai pas ce souci)
Y a t il des précautions spéciales à prendre avec ce controle ?
Un extrait des appels que je fais du controle.
Code :
- mo_WebBrowser.Create(NULL,NULL,WS_VISIBLE, CRect(0,0,0,0), this, 1004);
- mo_WebBrowser.ShowWindow(SW_SHOWNORMAL);
- [...] // retaillage du control, attente de saisie d'url, etc...
- mo_WebBrowser.Navigate(ms_CurPage.GetString(), &noArg,&noArg, &noArg, &noArg);
|
Message édité par zifox le 13-08-2009 à 11:14:48