[résolu] Question de WebGagdet et iFrame

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
tinangel
Messages : 56
Inscription : ven. 18/janv./2008 6:14

[résolu] Question de WebGagdet et iFrame

Message par tinangel »

Bonjour,

Je viens de créer un module contenant un WebGadget.
Ce WebGadget pointe sur un fichier local "update.html" qui (dans le code source) contient des iframe.
Ma page "update.html" si elle est chargée avec Firefox/Chrome ne me pose pas de soucis particulier. Cependant dans PB, les iframes sont comme dirait "bloquée" et du coup inutiles.

En parcourant le forum je suis tombé sur des infos concernant les WebGadget qui posaient des soucis (car ils ne s'affichaient pas) mais apparemment c'était en 4.60 et au vue du fait que maintenant c'est Gtk qui est utilisé (et surtout dû au fait que dans mon projet ça s'affiche) j'en déduis que c'est corrigé.

Cependant est-ce que vous sauriez les raisons qui feraient que les iframes ne peuvent pas faire défiler du texte (lorsqu'il est assez long bien entendu) ?

Existe-t-il un moyen de contourner le problème ?

Voici mon code :

Code : Tout sélectionner

    ;Initialier la fenêtre
       If OpenWindow(0,0,0,610,410,text_title$  + " v"  + MyLast(0)\version_installer,#PB_Window_SystemMenu | #PB_Window_ScreenCentered) 
          SetWindowColor(0, RGB(0,  0,  0))
          WebGadget(0,0,0,610,380, url_final$)
          text_button$  = ReplaceString(MyLast(0)\button_text_installer, "%s", MyLast(0)\version, 0, 1)
          ButtonGadget(1, 2, 381, 606, 28, text_button$ + " (10s)")
          DisableGadget(1, 1)
          StartTime = ElapsedMilliseconds()
          Repeat   
            CurrentTime = ElapsedMilliseconds() - StartTime
            CurrentSecond = 10  - CurrentTime/1000
            SetGadgetText(1, text_button$ + " ("  + Str(CurrentSecond) + " s)")
            If CurrentSecond <= 0 : 
                DisableGadget(1, 0)
                SetGadgetText(1, text_button$)
            EndIf
          Until WaitWindowEvent() = #PB_Event_CloseWindow
      EndIf  
Mon CSS pour mon iframe :

Code : Tout sélectionner

iframe{
	height:60px;
	width: 500px;
	border:none;	
}
Et mes balises html :

Code : Tout sélectionner

<div id="content_content">
	<iframe src="content/alert_2.html"></iframe>
</div>
Tout à l'air d'être bon il me semble mais lorsque je lance mon executable bein j'obtiens ça :
Image
--> Impossible de faire défiler l'iframe

Quelqu'un pourrait m'aiguiller s'il vous plait ?

Merci d'avance.

Cordialement,

Tinangel.

[edit]
Je viens de tester avec la version 4.61 et le problème du WebGagdet qui ne s'affiche pas est effectivement présent.
Etant donné que je suis sur la 5.00 Beta 5 je dois en conclure que pour le moment c'est pas encore tout à fait ok pour ce module.

Je réduirais le texte à afficher dans un premier temps le temps que la v5 soit officielle.

Si vous voyez d'autres pistes je suis preneur (sauf celle de passer directement par le navigateur :-) )

Merci à tous.
[/edit]
Dernière modification par tinangel le dim. 21/oct./2012 18:18, modifié 1 fois.
Avatar de l’utilisateur
tinangel
Messages : 56
Inscription : ven. 18/janv./2008 6:14

Re: Question de WebGagdet et iFrame

Message par tinangel »

Salut tout le monde,

Je me permet un petit UP car finalement j'ai trouvé ce qui clochait dans mon code.

En fait il s'agit des événements de ma fenêtre.

Je n'ai déclaré aucun événement dans ma fenêtre et par conséquent elle ne se rafraîchissait pas. Il suffit donc de mettre un bout de code comme celui-ci dans la boucle Repeat de votre fenêtre pour que ça marche :

Code : Tout sélectionner

   Event = WaitWindowEvent()
   Select Event     
         Case 1 :   Debug "Clic sur le Gadget de type Button"
    EndSelect
Je peux maintenant faire défiler mes iFrames comme je le souhaitais.

Merci encore.

Tinangel.
Répondre