FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Calculatrice
par papydall Hier à 22:45

» Orbites de l’ensemble de Mandelbrot
par Minibug Hier à 21:32

» Planétarium virtuel.
par Pedro Alvarez Hier à 17:07

» Demande pour Jack concernant PanExpress
par Minibug Hier à 11:04

» EPP_V01 éditeur pour Panoramic
par Minibug Mer 19 Sep 2018 - 21:03

» [RESOLU] Quelle ligne est sélectionnée dans SYNEDIT ?
par Jean Claude Mer 19 Sep 2018 - 21:02

» PanExpress : l'éditeur Panoramic avec création d'objet
par Minibug Mer 19 Sep 2018 - 15:58

» Petit coucou en passant !
par Minibug Dim 16 Sep 2018 - 15:03

» bug SEVERE fnc+sub : variables globales corrompus
par silverman Dim 16 Sep 2018 - 13:38

» Verrouiller un form en avant plan
par silverman Dim 16 Sep 2018 - 12:50

» Fin de l'aventure.
par Pedro Alvarez Sam 15 Sep 2018 - 18:16

» Demande d'explications Sur File_Write & File_writeln
par Jack Sam 15 Sep 2018 - 17:26

» MEMO avec des possibilités de commande
par Oscaribout Mer 12 Sep 2018 - 1:06

» La théorie du chaos
par jean_debord Mar 11 Sep 2018 - 9:30

» Version instantanée V 0.9.29i2 du 4/09/2018
par silverman Mer 5 Sep 2018 - 10:15

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Septembre 2018
LunMarMerJeuVenSamDim
     12
3456789
10111213141516
17181920212223
24252627282930
CalendrierCalendrier

Partagez | 
 

 Affichage de gif animé.

Aller en bas 
AuteurMessage
Pedro Alvarez

avatar

Nombre de messages : 1178
Date d'inscription : 19/01/2014

MessageSujet: Affichage de gif animé.   Sam 8 Nov 2014 - 10:03

Bonjour.

Je viens de découvrir que Panoramic permettait d'afficher, par un moyen détourné, des gifs animés.

Ce qui permet d'égayer un peu les pages ternes des programmes.

@Klaus: serait-il possible de cacher la barre de défilement de l'objet html, qui me gêne un peu ?

Code:
dim hnd%, res%, url$

dll_on "kgf.dll"

afficher_gif_anime()
end

sub afficher_gif_anime()
    file_open_write 1,"gif.htm"
    file_writeln 1,"<html>"
    file_writeln 1,"<img src='gifs_animes/boussole.gif'>"
    file_writeln 1,"</html>"
    file_close 1

    hnd%=handle(0)
    url$="file://"+dir_current$+"/gif.htm"
    res%=dll_call1("WBCreate",hnd%)
    res%=dll_call4("WBLocate",20,20,130,130)
    res%=dll_call1("WBUrl",adr(url$))
end_sub
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5993
Age : 68
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: Affichage de gif animé.   Sam 8 Nov 2014 - 11:12

@Klaus: a écrit:
serait-il possible de cacher la barre de défilement de l'objet html, qui me gêne un peu ?

Il suffit d’agrandir la fenêtre de vision.
Par exemple, changer la ligne 18, comme ceci
Code:
res%=dll_call4("WBLocate",20,20,230,230)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Pedro Alvarez

avatar

Nombre de messages : 1178
Date d'inscription : 19/01/2014

MessageSujet: Affichage de gif animé.   Sam 8 Nov 2014 - 11:18

Bonjour.

Merci Papydall.

Ok, mais ta solution ne me convient pas.

Je voudrais que la taille de la fénêtre de l'objet html ne dépasse pas la dimension de l'image gif.

Ceci afin de pouvoir inclure l'animation n'importe où sur l'écran de mon logiciel principal, sans interférer avec les autres objets.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5993
Age : 68
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: Affichage de gif animé.   Sam 8 Nov 2014 - 11:31

Je pense qu’il faut d'abord connaitre les dimensions de l’image à afficher pour ajuster les dimensions de la fenêtre de vision.

Code:
 res%=dll_call4("WBLocate",x1,y1,w+x1,h+y1)
' x1,y1 :  coordonnées du point haut gauche de la fenêtre de vision
' w et h : largeur et hauteur de l'image GIF
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Klaus

avatar

Nombre de messages : 11088
Age : 69
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Affichage de gif animé.   Sam 8 Nov 2014 - 12:08

Télécharge la nouvelle version V3.84 du 8/11/2013 de KGF.dll. Il y a 2 nouvelles fonctions qui résolvent ton problème. Et voici ton code adapté à cela:
Code:
dim hnd%, res%, url$

dll_on "kgf.dll"

afficher_gif_anime()
end

sub afficher_gif_anime()
    file_open_write 1,"gif.htm"
    file_writeln 1,"<html>"
    file_writeln 1,"<img src='gifs_animes/boussole.gif'>"
    file_writeln 1,"</html>"
    file_close 1

    hnd%=handle(0)
    url$="file://"+dir_current$+"/gif.htm"
    res%=dll_call1("WBCreate",hnd%)
    res%=dll_call4("WBLocate",20,20,130,130)
    res%=dll_call1("WBUrl",adr(url$))
    res%=dll_call2("WBScrollBars",0,0) : ' <======NOUVEAU: absence des 2 barres
end_sub
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 1178
Date d'inscription : 19/01/2014

MessageSujet: affichage de gif animé.   Dim 9 Nov 2014 - 8:41

Bonjour.

Merci Klaus pour la nouveauté.

C'est beaucoup mieux maintenant.

Voici le code que j'utilise.

L'appel de la sub se fait ainsi:

afficher_gif_anime("ecole4",120,30,130,100,"#ffffa4",1)


Code:
sub afficher_gif_anime(nom_image$,x%,y%,l%,h%,couleur$,flag%)
    zz%=0
    file_open_write 1,nom_image$+".htm"
    file_writeln 1,"<html>"
    if flag%=0
      zz%=20
      file_writeln 1,"<body bgcolor='"+couleur$+"'>"
      file_writeln 1,"<img src='gifs_animes/"+nom_image$+".gif'>"
          else
      file_writeln 1,"<body background='gifs_animes/"+nom_image$+".gif'>"
    end_if
    file_writeln 1,"</html>"
    file_close 1

    hnd%=handle(160)
    url$="file://"+dir_current$+"/"+nom_image$+".htm"
    res%=dll_call1("WBCreate",hnd%)
    res%=dll_call4("WBLocate",x%,y%,l%+zz%,h%+zz%)
    res%=dll_call1("WBUrl",adr(url$))
    res%=dll_call2("WBScrollBars",0,0)
end_sub
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Pedro Alvarez

avatar

Nombre de messages : 1178
Date d'inscription : 19/01/2014

MessageSujet: affichage de gif animé.   Dim 9 Nov 2014 - 10:56

Bonjour.

@Klaus.

Est-il possible de lancer une action (exécution d'une sub) en cliquant sur un objet html ?

Merci de la réponse.

Bon dimanche.

J'ai essayé le code suivant, mais il ne fonctionne pas.

Code:
dim hnd%, hndpos%, res%, url$, wb%

dll_on "kgf.dll"

label texte

afficher_gif_anime()
end

sub afficher_gif_anime()
    file_open_write 1,"gif.htm"
    file_writeln 1,"<html>"
    file_writeln 1,"<body background='gifs_animes/espagnol.gif'>"
    ' file_writeln 1,"<img src='gifs_animes/espagnol.gif' align=top border=0>"
    file_writeln 1,"</html>"
    file_close 1

    hnd%=handle(0)
    url$="file://"+dir_current$+"/gif.htm"
    wb%=dll_call1("WB_Create",hnd%)
    ' res%=dll_call1("WBCreate",hnd%)
    res%=dll_call5("WB_Locate",wb%,20,20,123,89)
    res%=dll_call2("WB_Url",wb%,adr(url$))
    res%=dll_call3("WB_ScrollBars",wb%,0,0)
   
    edit 2
    left 2,200
    on_click 2,texte
    hndpos%=handle(2)
    res%=dll_call2("ClickSetHook",wb%,hndpos%)
    res%=dll_call2("ClickSetLink",hndpos%,1)
end_sub

texte:
  message "hello"
return
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 11088
Age : 69
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Affichage de gif animé.   Dim 9 Nov 2014 - 12:56

Dans l'état actuel des choses, ce n'est pas possible. Et le problème est complexe. Je vais y réfléchir pour déterminer la faisabilité.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 1178
Date d'inscription : 19/01/2014

MessageSujet: affichage de gif animé.   Dim 9 Nov 2014 - 14:47

Bonjour.

@Klaus.

J'entrevois une solution, comme suit.
Le problème revient à intégrer cette méthode dans kgf.dll.

Code:
dim hnd%, hndpos%, res%, true%, url$, x%, y%, wb%

true%=1

dll_on "kgf.dll"

label texte

afficher_gif_anime()
end

sub afficher_gif_anime()
    file_open_write 1,"gif.htm"
    file_writeln 1,"<html>"
    file_writeln 1,"<body background='gifs_animes/espagnol.gif'>"
    file_writeln 1,"</html>"
    file_close 1

    hnd%=handle(0)
    url$="file://"+dir_current$+"/gif.htm"
    res%=dll_call1("WBCreate",hnd%)
    res%=dll_call4("WBLocate",20,20,123,89)
    res%=dll_call1("WBUrl",adr(url$))
    res%=dll_call2("WBScrollBars",0,0)
   
    while true%=1
          res%=dll_call3("GetMousePosition",hnd%,adr(x%),adr(y%))
          res%=dll_call6("IsPointInRectangle",x%,y%,20,20,123,89)
          caption 0,str$(x%)+","+str$(y%)+": "+str$(res%)
          if res%=1 then message "hello"
    end_while
   
end_sub

texte:
  message "hello"
return
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 11088
Age : 69
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Affichage de gif animé.   Dim 9 Nov 2014 - 15:24

Essaie plutôt comme ceci:

1. utilise
wbhnd% = dll_call1("WBFunction",Cool
pour récupérer le handle du browser

2. utilise
res% = dll_call5("ClickDefineRect",r%,x%,y%,w%,h%)
pour définir un rectangle, en passant 1 comme numéro du rectangle dans le paramètre r%

3. utilise
res% = dll_call3("ClickSetLinkRect",hnd_button%,typ%,r%)
pour intercepter un clic sur le browser, avec:
==> 1 comme numéro de rectangle r%
==> hnd_button% étant le handle d'un bouton (invisible) que tu as créé. Sa routine ON_CLICK sera déclenchée s'il y a un clic dans le rectangle 1
==> typ% prend les valeurs suivantes:
-5 = souris entre dans le rectangle
-6 = souris sort de le rectangle
-7 = souris bouge dans le rectangle
l faut donc faire 3 appels de ce genre.

Avec cela, tu interceptes si le curseur entre ou sort d'un rectangle spécifique. Mais cela ne détecte pas le clic proprement-dit.

Pour cela, tu peux essayer:
(1) comme ci-dessus

2. tu utilises
res% = dll_call2("ClickSetHook",hnd%,hndpos%)
==> hnd% étant le résultat de (1)
==> hndpos% étant le handle d'un bouton (invisible) que tu as créé et dont l'évènement on_click sera déclenché par un clic sur le browser

3. dans la routine on_click du bouton, tu récupères la position de la souris par
res% = dll_call3("GetMousePosition",hnd%,adr(xp%),adr(yp%))
avec xp% et yp% recevant les coordonnées (relatives) du clic sur l'objet de handle hnd% (le browser)

4. et, finalement, vérifies si les coordonnées du clic sont dans le rectangle voulu, par
res% = dll_call6("IsPointInRectangle",xp%,yp%,xr%,yr%,wr%,hr%)


Je continue à chercher un moyen de faire une fonction spécifique pour cela.

Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 1178
Date d'inscription : 19/01/2014

MessageSujet: affichage de gif animé.   Jeu 13 Nov 2014 - 18:09

Bonjour.

@Klaus.

Serait-il possible de regrouper les 4 commandes suivantes en une seule commande ?

Merci d'avance Klaus.

Code:
url$="file://"+dir_current$+"/"+nom_image$+".htm"

res%=dll_call1("WBCreate",handle(no%))
res%=dll_call4("WBLocate",x%*fl,y%*fh,int((l%+plusl%)*fl),int((h%+plush%)*fh))
res%=dll_call1("WBUrl",adr(url$))
res%=dll_call2("WBScrollBars",0,0)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 11088
Age : 69
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Affichage de gif animé.   Jeu 13 Nov 2014 - 19:03

Oui, comme ceci:
Code:

url$="file://"+dir_current$+"/"+nom_image$+".htm"
NewBrowser(no%,x%,y%,fl,fh,l%,plusl%,h%,plush%,url$)

...

sub NewBrowser(no%,x%,y%,fl,fh,l%,plusl%,h%,plush%,url$)
  res%=dll_call1("WBCreate",handle(no%))
  res%=dll_call4("WBLocate",x%*fl,y%*fh,int((l%+plusl%)*fl),int((h%+plush%)*fh))
  res%=dll_call1("WBUrl",adr(url$))
  res%=dll_call2("WBScrollBars",0,0)
end_sub
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 1178
Date d'inscription : 19/01/2014

MessageSujet: affichage de gif animé.   Jeu 13 Nov 2014 - 20:07

Bonsoir.

@Klaus.

Non, en fait, j'espérais la création d'une commande interne à KGF.DLL.

Car, la procédure que tu proposes, je sais faire.

Merci.

Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 11088
Age : 69
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Affichage de gif animé.   Jeu 13 Nov 2014 - 20:47

Impossible, Pedro, du fait du nombre de paramètres à passer. Panoramic ne peut pas passer plus de 6 paramètres à une fonction DLL. C'est pour cela que tout est découpé en petites unités fonctionnelles.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Pedro Alvarez

avatar

Nombre de messages : 1178
Date d'inscription : 19/01/2014

MessageSujet: Affichage de gif animé.   Jeu 13 Nov 2014 - 20:53

Bonsoir.

Ah, OK, pas de problème Klaus.

Merci de la précision.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Affichage de gif animé.   

Revenir en haut Aller en bas
 
Affichage de gif animé.
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Affichage sous IE des smileys et gif animés
» (1296) Gif animé : problèmes d'affichage
» Inscription sur E-anim-upload
» intégré une anim en fon décran pc
» pb de e-anim à la page html

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: A l'aide!-
Sauter vers: