Javascript et WebGadget

Programmation d'applications complexes
Cls
Messages : 620
Inscription : mer. 22/juin/2005 8:51
Localisation : Nantes

Javascript et WebGadget

Message par Cls »

Salut à tous,

j'ai un souci avec le webgadget et le plugin IE. Un sujet (sans réponse) est similaire sur le forum anglais (à voir ici : http://www.purebasic.fr/english/viewtop ... ript+error).

J'ai cette erreur JS sur un de mes projets :

Image

Quelqu'un a - t - il déjà rencontré ce type de souci ?
Est - il possible de virer ce popup (car la fonctionnalité en question fonction très bien :/) ?

Merci d'avance.
Cls
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Javascript et WebGadget

Message par Backup »

Cls a écrit : Est - il possible de virer ce popup (car la fonctionnalité en question fonction très bien :/) ?
j'ai la bulle de te faire un exemple, mais je supose qu'en utilisant l'api "FindWindow"

Code : Tout sélectionner

hWinCalc = FindWindow_ (#Null, "Erreur de script de Internet Explorer" )
pour trouver le handle de ta fenetre d'erreur

et en lui intimant l'ordre de se fermer avec un truc du genre

SendMessage_(hWinCalc, #WM_SHOWWINDOW,wParam , lParam)

pas testé !!! :)

ça devrai marcher puisque cette exemple fait rien que pour toi, :) fonctionne



; ceci ferme la fenetre au bout de 5 secondes
#win =1
openwindow ( #win ,10,10,800,600, "hello" , #PB_Window_SystemMenu ) ; on cree une fenetre avec le titre "Hello"

delay (5000) ; on attends 5 secondes

hWinCalc = FindWindow_ ( #Null , "hello" ) ; on recherche si une fenetre ayant pour titre "hello" .....existe oui ??
SendMessage_ (hWinCalc, #WM_SHOWWINDOW ,wParam , lParam) ; on envoire a cette fenetre l'ordre de se fermer !!
Cls
Messages : 620
Inscription : mer. 22/juin/2005 8:51
Localisation : Nantes

Message par Cls »

Merci Dobro, je vais tester ça ;)

Par contre, en ce basant sur ce principe il est fort probable que le popup s'ouvre brièvement.. Mais bon on va pas chipoter hein ! ;)

Je me demande s'il n'y a pas moyen d'ajouter un callback sur le moteur JS du plugin IE utilisé dans le WegGadget... [ Pas le NavigationCallback (j'ai déjà testé ! Il porte bien son nom : il n'agit que sur la navigation.) ]
Cls
Messages : 620
Inscription : mer. 22/juin/2005 8:51
Localisation : Nantes

Message par Cls »

Bonsoir à tous,

J'ai une nouvelle question concernant le Javascript et le WabGadget.

J'aimerais exécuter du JavaScript après le chargement d'une page, tout comme le fait GreaseMonkey sous FireFox pour ceux qui connaissent. J'utilise le plugin IE (je ne peux pas utiliser le plugin FireFox) ainsi que l'excellent code de Freak (voir ici : http://www.purebasic.fr/english/viewtop ... javascript).

Je place le callback suivant :

Code : Tout sélectionner

Procedure NavigationCallback(Gadget, Url.s) 
  
  Global SCRIPT

  ExecuteJavaScript(Gadget, "eval", SCRIPT, ";")
  
  ProcedureReturn #True
EndProcedure
SCRIPT contient mon code JS entier.

Le souci est qu'il ne se passe rien :( Et l'appli est très lente lorsque je change de page (il faut dire qu'il y a 11000 lignes de JS :/).

Avez - vous des idées ?
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

Un autre moyen:

Code : Tout sélectionner

Webbrowser.IWebBrowser2 = GetWindowLong_(GadgetID(#Web1), #GWL_USERDATA)
; Permet de supprimer les messages d'erreurs de scripts
Webbrowser\put_Silent(#True)
Cls
Messages : 620
Inscription : mer. 22/juin/2005 8:51
Localisation : Nantes

Message par Cls »

Merci nico, intéressant comme code ça !

N'y aurait - il pas moyen d'utiliser un truc dans le même esprit pour répondre à ma seconde question (éxécution de JS complexe après le chargement d'une page) ?
Répondre